我有一个ASP.NET vNext(5)项目.我想在项目中添加两个区域.我的问题是,如何在vNext中注册区域? System.Web.Mvc命名空间消失了,这是AreaRegistrationContext所在的位置.我开始在
GitHub上查看MVC源代码.我找到了
Area attribute.但是,我不知道如何利用它.
有人可以向我解释(或提供一个链接)如何使用ASP.NET vNext中的区域?
谢谢!
解决方法
在vNext中,您可以注册和配置要在Startup.cs中使用的服务.区域路线与正常路线一样被添加.这里有一个样本:
https://github.com/aspnet/Mvc/blob/dev/samples/MvcSample.Web/Startup.cs
您可以为这样的区域添加MVC路由:
app.UseMvc(routes => { routes.MapRoute("areaRoute","{area:exists}/{controller}/{action}"); });
或者你可以使用这样的路由属性:[Route(“[area] / Home”)]
[Area]属性修饰区域中包含的控制器.它只需要一个参数,即区域的名称.这是一个例子:https://github.com/aspnet/Mvc/blob/dev/samples/MvcSample.Web/Areas/Travel/Controllers/HomeController.cs
[Area("Travel")] public class HomeController : Controller { //... }