在较旧的asp.net中 - 我们过去常常在Application_BeginRequest- Handler(Global.asax)中设置语言的项目,如下所示:
System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(cookie.Lang)
Run Code Online (Sandbox Code Playgroud)
现在我转而使用MVC 2并决定将语言保留为URL中的修复路径.URL如下所示:{lang}/{controller}/{action}
我应该如何以及在何处从URL中读取语言并设置CurrentCulture?如何最好地完成MVC - 方式?
任何tipps的Thx!
global.asax中的这样的东西应该有效
protected void Application_AcquireRequestState(object sender, EventArgs e)
{
MvcHandler handler = Context.Handler as MvcHandler;
if (handler == null)
return;
string lang = handler.RequestContext.RouteData.Values["lang"] as string;
CultureInfo culture = CultureInfo.GetCultureInfo(lang);
Thread.CurrentThread.CurrentUICulture = culture;
Thread.CurrentThread.CurrentCulture = culture;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3149 次 |
| 最近记录: |