2014-12-02 19 views
7

Ho un progetto ASP.NET vNext (5). Sto cercando di aggiungere due aree al progetto. La mia domanda è, come posso registrare le aree in vNext? Lo spazio dei nomi System.Web.Mvc non esiste più, ovvero dove si trovava AreaRegistrationContext. Ho iniziato a cercare nel codice sorgente MVC su GitHub. Ho trovato il Area attribute. Tuttavia, non sono sicuro di come utilizzarlo ora.Utilizzo delle aree in ASP.NET 5

Qualcuno può spiegarmi (o fornire un collegamento) su come utilizzare Aree in ASP.NET vNext?

Grazie!

risposta

5

In vNext registrare e configurare i servizi che si intende utilizzare in Startup.cs. I percorsi di area vengono aggiunti come normali percorsi. C'è un esempio qui: https://github.com/aspnet/Mvc/blob/dev/samples/MvcSample.Web/Startup.cs

Si potrebbe aggiungere un percorso MVC per un settore come questo:

app.UseMvc(routes => 
{ 
    routes.MapRoute("areaRoute", "{area:exists}/{controller}/{action}"); 
}); 

Oppure si potrebbe usare un attributo di percorso come questo: [Route("[area]/Home")]

Il [Area] attributo decora i controller inclusi nell'area. Ci vuole solo un parametro, il nome dell'area. Ecco un esempio: https://github.com/aspnet/Mvc/blob/dev/samples/MvcSample.Web/Areas/Travel/Controllers/HomeController.cs

[Area("Travel")] 
public class HomeController : Controller 
{ //... } 
+0

il github collegamenti sembrano essere rotto – eiu165

+1

Startup.cs: https://github.com/aspnet/Mvc/blob/a420af67b72e470b9481d6b2eca29f7c7c2254d2/samples/MvcSample.Web/Startup.cs e HomeController .cs: ​​https://github.com/aspnet/Mvc/blob/a420af67b72e470b9481d6b2eca29f7c7c2254d2/samples/MvcSample.Web/Areas/Travel/Controllers/HomeController.cs (dalla cronologia git) –