asp.net mvc мастер детали и маршрутизация - PullRequest
2 голосов
/ 27 февраля 2010

Я пытаюсь смоделировать класс и разделы класса и другие экземпляры разделов.

так маршрут должен быть Класс / (Создать, Детали, Индекс, Изменить) для классов

Тогда у меня есть секционный контроллер

ClassSection

так я бы сделал

Class / 1 / ClassSection / (Create, ...), поскольку ClassSection без classid бесполезен

и далее

Класс / 1 / ClassSection / 1 / Экземпляр

чтобы перейти к контроллеру SectionInstance

как мне сопоставить мои маршруты в соответствии с этой нотацией

Я пытался сделать это для секций классов

  routes.MapRoute(
      "ClassSections",
      "Class/{classid}/ClassSection/{action}/{id}",
      new { controller = "ClassSection" },
      new { classid = @"d+" }
  );

но я не могу сгенерировать правильную ссылку из Html.ActionLink в действии Index класса

1 Ответ

0 голосов
/ 27 февраля 2010

Вы должны рассмотреть возможность использования Области. Похоже, вы уже движетесь в этом направлении, но ASP.NET MVC 2.0 имеет специальную поддержку для этого.

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

Учитывая жесткие ограничения "Class" и "ClassSection" в вашем шаблоне Url, я сомневаюсь, что вам нужен новый {classid = @ "d +"}, чтобы сделать его уникальным соответствием. Попробуйте удалить эту часть вашего MapRoute и посмотрите, решит ли это проблему.

...