2009-09-04 14 views
12

Szukam opcji routingu podobnej do zagnieżdżonej funkcji routingu RESTFul dostępnej przez Railsy. Projekt SimplyRestful na MvcContrib nie wydaje się być dłużej aktywny ani nie wydaje się być aktualny w wydaniu 1.0 MVC.Obsługa ASP.Net MVC dla zagnieżdżonych zasobów?

To uri schemat szukam,

/Aktywność/10/Zadanie/1/Edycja lub /Aktywność/10/Zadanie/Edycja/1

Po prostu raj” t udało się go uruchomić, a cała dokumentacja, którą przeprowadziłem, opisuje scenariusz, który nie jest zagnieżdżony. To nie wydaje się, że to będzie takie trudne ....

To co ja pracuję z ...

 
    routes.MapRoute(null, 
     "Activity/{activityId}/Task/{action}/{id}", 
     new { controller = "Task", action = "Edit", activityId = "", id = "" }); 

Odpowiedz

13

Dodaj wartość domyślną dla activity:

routes.MapRoute(null, 
    "Activity/{activityId}/Task/{action}/{id}/{activity}", 
    new { 
     controller = "Task", 
     action = "Edit", 
     id = "", 
     activityId = "", 
     activity = "" }); 

Pamiętaj również, że trasa ta będzie tylko odebrać adresy URL w formularzu

/Activity/10/Edit/1/theActivity 

natomiast Twój przykład

/Activity/10/Edit/1 

zostanie odebrany przez domyślnej trasy, ustawienie wartości trasy do

controller = "Activity" 
action = "10" 
id = "Edit/1" 

Phil Haack na Routing Debugger dla ASP.NET MVC jest niezwykle przydatna dla zastanawianie się, jak działają te rzeczy ...

+0

Dzięki. Właśnie zdałem sobie sprawę, że wkleiłem to w wypadku, zanim go opublikowałem. – nerraga

+0

Wspomniany debuger routingu pojawił się kilka razy na moim czytniku, zupełnie o nim zapomniałem. Dzięki! – nerraga

Powiązane problemy