C# 如何在IControllerFactory中更改Url
我正在处理一项任务,例如,当您转到Url:/Home/Index时, 如果浏览器语言设置为英语,则应重定向到/Home\u en/Index 现在,我设法从主控制器查看索引,但Url保持不变-/Home/Index 我还在Globas.asax中添加了一行: ControllerBuilder.Current.SetControllerFactory(新ControllerFactoryController()) 如何在Url中将其显示为/Home\u en/IndexC# 如何在IControllerFactory中更改Url,c#,asp.net,.net,asp.net-mvc,C#,Asp.net,.net,Asp.net Mvc,我正在处理一项任务,例如,当您转到Url:/Home/Index时, 如果浏览器语言设置为英语,则应重定向到/Home\u en/Index 现在,我设法从主控制器查看索引,但Url保持不变-/Home/Index 我还在Globas.asax中添加了一行: ControllerBuilder.Current.SetControllerFactory(新ControllerFactoryController()) 如何在Url中将其显示为/Home\u en/Index public ICon
public IController CreateController(RequestContext requestContext, string
controllerName)
Type targetType = null;
string[] languages = HttpContext.Current.Request.UserLanguages;
if (languages[0] == "en-US")
{
requestContext.RouteData.Values["controller"] = "Home_en";
targetType = typeof(Home_enController);
}
else
{
requestContext.RouteData.Values["controller"] = "Home_pl";
targetType = typeof(Home_plController);
}
IController controller = Activator.CreateInstance(targetType) as IController;
return controller;
}