Это скорее открытый вопрос, чем поиск конкретного ответа.asp.net MVC Solution/Project layouts
Как мы все знаем, нет ни одного ответа, который бы соответствовал всем решениям, но мне любопытно узнать, как вы структурируете решения asp.net MVC и любые подводные камни, которые вы, возможно, встретили в своем дизайне или вещах, которые вы бы сделали иначе, если бы вы могли начать снова.
Стандартный шаблон asp.net MVC - это всего лишь базовый шаблон, и я уверен, что прочитал/услышал в подкасте, что Скотт Гензельман заявил, что единственная причина, по которой находится папка Model, заключается в том, что люди не спрашивали, где модель. Это уже подразумевает, что, возможно, его следует переместить в отдельный класс.
Лично в небольших приложениях MVC, которые я выполнил, я выделил модель в свой единственный класс, который содержит модель и репозиторий, в то время как проект «MVC» имеет контроллер и представления. Это обычно тренировка без каких-либо проблем, но, как я уже сказал, это только небольшие приложения.
Так что же делают большинство людей? - Просто используя стандартный шаблон? - Разделите только модель? - Разделите модель и контроллер? - Разделение даже перемещение, поэтому доступ к данным осуществляется через веб-службы или какой-то портал данных? - Или что-то совсем другое?
И наконец, как люди создают модульные тесты? Только один единый тестовый класс, который тестирует каждый из проектов или единичный тестовый класс для каждого проекта?
Интересный подход, после нескольких проектов MVC в гораздо большем масштабе, по умолчанию макет начинает казаться загроможденным. –