gpt4 book ai didi

asp.net-mvc - 如何将命名空间添加到自定义路由扩展

转载 作者:行者123 更新时间:2023-12-03 23:29:03 24 4
gpt4 key购买 nike

我使用 routes.add 而不是 routes.maproute (它有一个命名空间 arg)
因为我扩展了路由类。
我需要在路由上添加命名空间,因为我的区域之一具有相同的 Controller 名称
网站内。
我的问题是我不知道在哪里放置命名空间..

public class CultureRoute : Route
{
public CultureRoute(string url, object defaults, object constraints, RouteValueDictionary dataTokens)
: base(url, new RouteValueDictionary(constraints), dataTokens, new MvcRouteHandler())
{
}
}

全局.asax

routes.Add("Default", new CultureRoute(
"{controller}/{action}/{id}",
new {controller = "Home", action = "Index", id = UrlParameter.Optional}));

最佳答案


var dataTokens = new RouteValueDictionary();
var ns = new string[] {"MyProject.Controllers"};
dataTokens["Namespaces"] = ns;

routes.Add("Default", new CultureRoute(
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
null /*constraints*/,
dataTokens
));

关于asp.net-mvc - 如何将命名空间添加到自定义路由扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4103876/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com