2009-10-25 13 views
13

Mam problem z podglądem 2 programu ASP.NET MVC 2 i próbuję dowiedzieć się, jak działa routing z obszarami i tym podobne. W pojedynczej realizacji projektu obszarów, chcę obszar o nazwie "admin".Routing w ASP.NET MVC i obszary

Staram się być w stanie mieć adresy URL tak:

(root)/admin/apples/search 
(root)/admin/apples/edit/3 
(root)/admin/apples/add 
(root)/admin/oranges/search 
(root)/admin/oranges/edit/5 
(root)/admin/oranges/add 
(root)/admin 

mam obszar utworzony. Mam kontrolerów utworzonych z ich widoków, ale to nie mogę uzyskać routingu. Jakieś rady na temat tego, w jaki sposób osiągnęłbym taki routing?

Jestem pewien, że dla niektórych może to być bardzo proste, ale nie miałem zbyt wiele szczęścia w znalezieniu przykładów, które wykraczają poza podstawowe rzeczy.

Dzięki!

Dodatek na pytanie (25.10.2009) Ja w zasadzie pytaniem, jakie trasy i w jakiej kolejności chciałbym skonfigurować w klasie AreaRegistration tego obszaru? Zrobiłem wszystko, o czym wspominałem, ale bez rezultatów.

Odpowiedz

27

Register areas in single project

Trzeba dodać plik routes.cs do folderu administracyjnego.

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.Mvc; 

namespace MvcAreasSingleProject.Areas.Admin 
{ 
    public class Routes : AreaRegistration 
    { 
     public override string AreaName 
     { 
      get { return "admin"; } 
     } 

     public override void RegisterArea(AreaRegistrationContext context) 
     { 
      context.MapRoute(
       "admin_default", 
       "admin/{controller}/{action}/{id}", 
       new { controller = "Admin", action = "Edit", id = "" } 
      ); 
     } 
    } 
} 
+2

To mi odpowiada. – Haacked

0

http://haacked.com/archive/2009/07/31/single-project-areas.aspx

 
routes.MapAreaRoute("Forums", 
     "admin_area", 
     "admin/{controller}/{action}/{id}", 
     new { controller = "apples", action = "search", id = "" }, 
     new string[] { "Project.Areas.Admin.Controllers" }); 
+0

To jest dla programu ASP.NET MVC 2 Preview 1 - Pracuję nad podglądem 2, który obejmuje natychmiastowe wdrożenie obszarów w pojedynczym projekcie. RouteCollection nie ma nawet metody MapAreaRoute w Preview 2. –

+0

http://forums.asp.net/t/1477416.aspx –