我有一個ASP.NET vNext(5)項目。我正在嘗試在項目中添加兩個區域。我的問題是,如何在vNext中註冊區域? System.Web.Mvc
命名空間消失了,這是AreaRegistrationContext的位置。我開始在GitHub上查看MVC源代碼。我找到了Area attribute。但是,我不知道現在如何使用它。在ASP.NET 5中使用區域
有人可以向我解釋(或提供鏈接)如何使用ASP.NET vNext中的區域?
謝謝!
我有一個ASP.NET vNext(5)項目。我正在嘗試在項目中添加兩個區域。我的問題是,如何在vNext中註冊區域? System.Web.Mvc
命名空間消失了,這是AreaRegistrationContext的位置。我開始在GitHub上查看MVC源代碼。我找到了Area attribute。但是,我不知道現在如何使用它。在ASP.NET 5中使用區域
有人可以向我解釋(或提供鏈接)如何使用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")]
[區域]屬性裝飾該地區的控制器。它只需要一個參數,即區域的名稱。這裏有一個例子:https://github.com/aspnet/Mvc/blob/dev/samples/MvcSample.Web/Areas/Travel/Controllers/HomeController.cs
[Area("Travel")]
public class HomeController : Controller
{ //... }
GitHub的鏈接似乎被打破 – eiu165 2016-01-06 16:28:15
Startup.cs:https://github.com/aspnet/Mvc/blob/a420af67b72e470b9481d6b2eca29f7c7c2254d2/samples/MvcSample.Web/Startup.cs和HomeController的.cs:https://github.com/aspnet/Mvc/blob/a420af67b72e470b9481d6b2eca29f7c7c2254d2/samples/MvcSample.Web/Areas/Travel/Controllers/HomeController.cs(來自git歷史記錄) – 2016-01-06 20:26:52