TG.WXCRM.V4/WEB/App_Start/RouteConfig.cs

197 lines
9.3 KiB
C#

using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
namespace WX.CRM.WEB
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "WX.CRM.WEB.BASE",
url: "{Base}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
"WX.CRM.WEB.RES",
"{Res}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.TEST",
"{Test}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.SOFT",
"{Soft}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.ORD",
"{Ord}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.CSVR",
"{CSVR}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.Sms",
"{Sms}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.Fxh",
"{Fxh}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.Import",
"{Import}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.Gjs",
"{Gjs}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.Hst",
"{Hst}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.Quality",
"{Quality}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
"WX.CRM.WEB.Level2",
"{Level2}/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
name: "WX.CRM.WEB.Qc",
url: "{Qc}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.TZGW",
url: "{TZGW}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.YTG",
url: "{YTG}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.YICH",
url: "{YICH}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.Autorpt",
url: "{Autorpt}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.DeptRpt",
url: "{DeptRpt}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.WeiXin",
url: "{WeiXin}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.Weapp",
url: "{Weapp}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.QH",
url: "{QH}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }
);
routes.MapRoute(
name: "WX.CRM.WEB.TS",
url: "{TS}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.WeWork",
url: "{WeWork}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.Exam",
url: "{Exam}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.Ww",
url: "{Ww}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "WX.CRM.WEB.Cms",
url: "{Cms}/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
constraints: new { customConstraint = new AbandonConstraint() }//自定义限制路由 }
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
public class AbandonConstraint : IRouteConstraint
{
public bool Match(HttpContextBase httpContext, Route route, string parameterName, RouteValueDictionary values, RouteDirection routeDirection)
{
if (values.Keys.First().ToLower() != values.Values.First().ToString().ToLower())
return false;
string notAllow = "[Home][Control]";//这个控制器必须二级显示
if (notAllow.ToLower().IndexOf(values["controller"].ToString().ToLower()) > -1)
return false;
return true;
}
}
}
}