C# 我可以添加到每个我需要的url前缀吗?
我有一条路线C# 我可以添加到每个我需要的url前缀吗?,c#,asp.net,asp.net-mvc,razor,C#,Asp.net,Asp.net Mvc,Razor,我有一条路线 routes.MapRoute( name: "Default", url: "{langCode}/{controller}/{action}", defaults: new { controller = "Services", action = "Index", langCode = "en" } ); 有没有办法链接到每个添加的语言代码? 我不想添加像这样的每个链接 r
routes.MapRoute(
name: "Default",
url: "{langCode}/{controller}/{action}",
defaults: new { controller = "Services", action = "Index", langCode = "en" }
);
有没有办法链接到每个添加的语言代码?
我不想添加像这样的每个链接
routeValues: new { langCode = ViewContext.RouteData.Values["langCode"] }
附言:
你不必每次都写:
@Html.ActionLink("Log in", "Login", "Account", routeValues: new { langCode = ViewContext.RouteData.Values["langCode"] })
如果当前url中存在langCode路由值,则框架本身将自动重用该值。例如,如果当前url看起来像/en/Account/Register,并且您调用@Html.ActionLinkLog-in、Login、Account,则生成的url将是/en/Account/Login
@Html.ActionLink("Log in", "Login", "Account", routeValues: new { langCode = ViewContext.RouteData.Values["langCode"] })