C# 如何保留当前url,同时切换其中的语言参数?

C# 如何保留当前url,同时切换其中的语言参数?,c#,asp.net-mvc,asp.net-mvc-4,localization,C#,Asp.net Mvc,Asp.net Mvc 4,Localization,我有以下默认路线: routes.MapRoute( name: "Default", url: "{lang}/{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id =

我有以下默认路线:

        routes.MapRoute(
            name: "Default",
            url: "{lang}/{controller}/{action}/{id}",
            defaults: new
            {
                controller = "Home",
                action = "Index",
                id = UrlParameter.Optional
            });

因此,每当我导航到
localhost:6060/en/Home/Index
localhost:6060/fr/Home/Index
,页面都会以该语言显示。我想做的是为锚标记生成链接,它提供了语言选择的可能性。这很容易,但我正在努力解决的是,如何保留当前参数,以便用户在切换语言时保持在同一页面上。

如何生成锚定标记?通过使用
Controller.Url
UrlHelper
类?如果是这样,为什么您不能直接从操作方法的参数将路由值传递给它的
操作
方法作为路由值?是的……您应该能够按照LB2的建议进行操作……如果由于某种原因您遇到了问题,客户端总是通过window.location.href