Попытка выяснить, как лучше организовать сайт ASP.NET MVC. Возьмите очень простое отношение 1..N: у компании может быть много контактов, у контактов должна быть ровно одна компания.
У меня есть ваши типичные маршруты:
- Компания / Индекс (список всех компаний)
- Компания / Подробности / {int} (информация о Компании {int})
- Компания / Создать (создать новую компанию)
- Контакт / Индекс (список всех контактов)
- Контакт / Создать (создать новый контакт, компания выбирается из выпадающего списка)
Теперь, если бы я захотел создать страницу, которая создала контакт в контексте компании (со страницы сведений о компании), чтобы требуемая компания была заполнена / недоступна для редактирования), каким был бы наилучший путь? что, не дублируя код, где это возможно.
Не уверен, что смогу ли я использовать логику / представление Контакт / Создать с контроллера компании (и смогу вернуться на страницу сведений о компании после завершения) или связываться с маршрутами, чтобы сделать что-то вроде Company / Details / { int} / Contact / Create (даже не уверен, имеет ли это смысл или сработает)?
Должен быть лучший способ, чем добавить мою логику и представление для добавления контакта в представление моего контроллера и его дублирования.