使用ASP.NET MVC4路由:
如果我想为网站的主要部分设置默认路由配置:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
然后是另一种路由配置,类似于以下内容:
routes.MapRoute(
name: "FOO",
url: "FOO/{controller}/{action}/{id}",
defaults: new { controller = "FOO", action = "bar", id = UrlParameter.Optional }
);
请注意网址中的字符串“ FOO / ”(就在/{controller...
例如,我希望能够使用以下网址访问我网站的主要部分
http://dummyurl.com/bar/1
但是如果我要使用
,则访问具有相同名称的控制器和操作 http://dummyurl.com/**FOO**/bar/1
答案 0 :(得分:1)
routes.MapRoute(
name: "FOO",
url: "FOO/{controller}/{action}/{id}",
defaults: new { controller = "FOO", action = "bar", id = UrlParameter.Optional }
);
除非你有一个名为FOO
的mvc区域,否则这条路线会产生你可能不会期望的东西,。该路线仅适用于http://yourdomain/foo/foo/any_method_in_foo/id
答案 1 :(得分:1)
通过浏览我需要提出的routing documentation by "the Gu"来计算:
routes.MapRoute(
name: "FOO",
url: "FOO/{controller}/{action}/{id}",
defaults: new { controller = "FOO", action = "bar", id = UrlParameter.Optional }
);
以上:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
在我的Routes.config
和blammo中,很高兴。我现在可以在项目中分离和访问例如Admin(“FOO”)部分。