我有一个请求,它有一条路线,但是在 global.asax 中设置了很多它们......一个典型的路线是......
routes.MapRoute(
"NewStore",
"{culture}/{client}/{brand}/NewStore/{action}",
new
{
culture = UrlParameter.Optional,
client = UrlParameter.Optional,
brand = UrlParameter.Optional,
controller = "NewStore",
action = "Index"
}
);
我需要创建一个 ddl 来切换页面上的文化。所以实际上我想要做的就是重新创建路由 url 但更改一个参数。所以我想做点什么...
Route currentRoute = httpContext.GetCurrentRoute();
Route englishCultureRoute = currentRoute;
Route spanishRoute = currentRoute;
englishCultureRoute.RouteData.Values["culture"] = "en-en"
spanishRoute RouteData.Values["culture"] = "es-es"
@Html.SelectListForRoutes(englishCultureRoute,spanishRoute);
所以上面是伪代码,我想在控制器中做第一个位,但我如何在 c# 中做到这一点?