我有两个非常类似的ASP.NET MVC路由,下面提供。组合类似的ASP.NET MVC路由
无论如何要结合这两条路线并放置条件语句,以便(1)对“logs/email /”的任何请求发送到EmailLogsController,并请求“logs/user /”发送到UserLogsController?
// URL: /areax/logs/email/
// URL: /areax/logs/email/details/51
// URL: /areax/logs/email/details/117
context.MapRouteLowercase(
"AreaX.Log.Email",
"areax/logs/email/{action}/{id}",
new
{
controller = "EmailLogs",
action = "Index",
id = UrlParameter.Optional
},
new[] { ControllerNamespaces.AreaX }
);
// URL: /areax/logs/user/
// URL: /areax/logs/user/details/1
// URL: /areax/logs/user/details/10
context.MapRouteLowercase(
"AreaX.Log.User",
"areax/logs/user/{action}/{id}",
new
{
controller = "UserLogs",
action = "Index",
id = UrlParameter.Optional
},
new[] { ControllerNamespaces.AreaX }
);
目前的情况是,他们不看很干。
见stackoverflow.com/questions/3303801/... - 斯蒂法诺阿尔铁刚才编辑 – 2013-02-25 10:58:31
谢谢@StefanoAltieri - 考虑到问题的本质,我希望能有一个更简单的解决方案。 – Bern 2013-02-25 11:13:54
我更新了我的答案...看看它是否可以为你工作 – 2013-02-25 11:16:40