Я все еще новичок в MVC, поэтому надеюсь, что это просто.
Мне нужны категории и подкатегории, потенциально многоуровневые, и я пытаюсь правильно организовать свой проект. Прямо сейчас я использую готовый проект MVC в VS2008.
Например, предположим, что я хочу перейти к: http://mysite.com/Products/Electronics/Computers/Laptops
Я могу добиться этого, поместив LaptopsController в мой каталог Controllers, каталог Latops с различными aspx-файлами в моих представлениях и добавив строку в мой класс Global.asax, которая сопоставляет этот конкретный маршрут с соответствующим контроллером.
Но я надеюсь, что есть способ автоматически отображать маршрут, сохраняя при этом чистую и организованную структуру каталогов в проекте, поскольку будет много разных категорий и продуктов. В идеале в моем проекте должны быть физические каталоги для контроллеров и представлений, соответствующие «каталогам» в пути URL. Но я не могу заставить это работать.
Я просмотрел несколько статей о серьезных настройках маршрутизации, но по возможности предпочел бы этого не делать. Похоже, это будет что-то встроенное, так что, возможно, я просто что-то упускаю.
Если бы вы могли указать мне правильное направление, это было бы здорово.
routes.MapRoute("ProductRoute", "Products/{department}/{category}/{product}" new { controller = "Products" });
22.06.2011View(string.Format("{0}/{1}/{2}/{3}", department, category, product, action)
, и, похоже, он работает именно так, как я хочу. Всем спасибо. 22.06.2011