【发布时间】:2011-07-02 13:49:05
【问题描述】:
我的应用程序是多语言的,我编写了以下路线来处理语言:
routes.MapRoute(
"Default", // Route name
"{language}/{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index",
language = "pt", id = UrlParameter.Optional }, // Parameter defaults
new { language = @"(pt)|(es)|(en)" }
);
这适用于domain.com 和domain.com/pt/home/index。但是,如果我输入 domain.com/home/index,它会失败 (404)。
所需的行为是将其重定向到domain.com/pt/home/index(pt 是默认语言)。
实现这一目标的最佳方法是什么?我已经阅读了很多关于路由和 ActionFilters 的内容,但似乎没有什么是完全正确的。
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-3 routes