我正在构建一个拥有多种语言版本的网站。目前我使用会话变量来管理不同语言版本的国家/地区代码
但是今天客户明确要求将国家/地区代码放在域名后面的网址中,这样网站网址就会像这些示例一样
英国版:www.mysite.com/uk/{controller}/{action}/{id}
美国版:www.mysite.com/usa/{controller}/{action}/{id}
我将默认路线定义为
routes.MapRoute(
"Default", // Route name
"{country}/{controller}/{action}/{id}", // URL with parameters
new { country ="uk", controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults.uk is the default value
);
但我不确定如何获取控制器中url的第一段?
答案 0 :(得分:0)
找到解决方案, 只需使用RouteData.Values [“country”],简单明了!