Я создаю сайт и рассматриваю возможность использования областей, чтобы охватить сценарий, аналогичный тому, который я собираюсь описать.
В настоящее время у меня есть сайт с 4 разделами, давайте назовем их Создать, Управление, Раздел 3 и Раздел 4
Создание и управление - это действия над доменным объектом, с которым я работаю. Доменный объект имеет ряд коллекций подобъектов, которые к нему относятся. Они также должны быть созданы и управляться.
Я использую Продукты в качестве примера, чтобы ничего не отдавать, но это не совсем соответствует тому же домену - поэтому, пожалуйста, не говорите «Почему у вас нет раздела Продукты»
Моя текущая реализация имеет ManageController, который имеет Действия, такие как Категории, Категория, ProductsForCategory
Я думаю, что мне нужны области, однако некоторые URL-адреса должны быть ограничены, поэтому я хочу
- / Управление / Категория / 8 / Продукты
- / Управление / Категория / 8 / Продукт / 1
Возможно ли это с помощью Области? Нужно ли устанавливать новые правила маршрутизации?
Будет ли у моего CategoryController 2 параметра в действии, например
public ActionResult Product(int categoryId, int productId)
{
//get category
var cat = GetCategory(categoryId);
//get product
var product = cat.Products.SingleOrDefault(x=>x.Id == productId);
if(product == null)
return RedirectToAction("Index","Manage");
return View(product);
}
Тогда у меня будет правило маршрутизации, переданное в идентификаторе категории?
Правильно ли я думаю об этом?