C# ASP.NETMVC自动重定向到使用语言的路由
假设我有一个ASP.NETMVC4Web应用程序。在这个应用程序中,我有两个控制器“产品”和“支持” 此应用程序是一个支持语言的web应用程序,因此当用户导航到时,我希望自动重定向到 支持也是一样:从到 我已经有了一些基于浏览器确定用户语言的逻辑,我只是不确定实现上述目标的最佳方法 只是想澄清一下,我已经有了一个默认的语言路线C# ASP.NETMVC自动重定向到使用语言的路由,c#,asp.net,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 4,假设我有一个ASP.NETMVC4Web应用程序。在这个应用程序中,我有两个控制器“产品”和“支持” 此应用程序是一个支持语言的web应用程序,因此当用户导航到时,我希望自动重定向到 支持也是一样:从到 我已经有了一些基于浏览器确定用户语言的逻辑,我只是不确定实现上述目标的最佳方法 只是想澄清一下,我已经有了一个默认的语言路线 private const string languagePartPattern = @"(\w{2})|(\w{2}-\w{2,4})"; routes.MapRou
private const string languagePartPattern = @"(\w{2})|(\w{2}-\w{2,4})";
routes.MapRoute(
name: "DefaultLang",
url: "{lang}/{controller}/{action}/{id}",
constraints: new { lang = languagePartPattern }, //For example: en or en-US
defaults: new { lang = SettingsHelper.DefaultLanguage, controller = "EntryPoint", action = "Index", id = UrlParameter.Optional }
);
如果导航到,它不会自动重定向到。但是,如果我直接导航到那里有大量关于这个主题的文章、博客等问题,效果会很好。使用谷歌(或Bing;-)。或者。我确实搜索了->我打了个招呼;-)并实现了一个url为“{lang}/{controller}/{action}/{id}”的默认路由,但如果导航到它,则不会重定向到。如果我直接导航到,它可以正常工作。请参阅一个示例,其中包括根据用户的浏览器设置重定向到当前区域性(或任何碰巧更改标题的防火墙-始终为用户提供选择区域性的方法!!)请参阅此文件、博客以及有关此主题的大量问题。使用谷歌(或Bing;-)。或者。我确实搜索了->我打了个招呼;-)并实现了一个url为“{lang}/{controller}/{action}/{id}”的默认路由,但如果导航到它,则不会重定向到。如果我直接导航到,它可以正常工作。有关基于用户的浏览器设置重定向到当前区域性的示例,请参阅(或任何碰巧更改标题的防火墙-始终为用户提供选择区域性的方法!!),请参阅此