3 回答
TA贡献1786条经验 获得超13个赞
这就是我做的。我不知道为什么MapRoute()不允许您设置区域,但是它确实返回了路由对象,因此您可以继续进行所需的任何其他更改。我之所以使用它,是因为我有一个向企业客户出售的模块化MVC网站,他们需要能够将dll拖放到bin文件夹中以添加新模块。我允许他们在AppSettings配置中更改“ HomeArea”。
var route = routes.MapRoute(
"Home_Default",
"",
new {controller = "Home", action = "index" },
new[] { "IPC.Web.Core.Controllers" }
);
route.DataTokens["area"] = area;
编辑:您也可以在AreaRegistration.RegisterArea中尝试默认用户想要的区域。我还没有测试过,但是AreaRegistrationContext.MapRoute确实route.DataTokens["area"] = this.AreaName;为您设置了。
context.MapRoute(
"Home_Default",
"",
new {controller = "Home", action = "index" },
new[] { "IPC.Web.Core.Controllers" }
);
- 3 回答
- 0 关注
- 1446 浏览
添加回答
举报