Или я начал свой набег в MVC на неправильной ноге?
Я боюсь, что это может быть так и следующее предложение подтверждает это:
У меня есть сайт, который имеет точку зрения, сгенерированные непосредственно из объектов, созданных Entity Framework
Вы не должны использовать ваши модели EF в представлениях напрямую. Считается хорошей практикой иметь модели взглядов. Это классы, которые специально разработаны для нужд данного представления и могут содержать форматирование и проверку. Типичный сценарий может быть следующим:
- действию контроллера испрашивается
- Контроллер запрашивает хранилище для извлечения модели (модели EF, если вы будете)
- Контроллер преобразует эту модель в модель представления используя слой отображения (это можно легко достичь с помощью AutoMapper).
- Контроллер передает модель представления к представлению
Этот сценарий также работает, когда действие контроллера получает модель представления с точки зрения, проверяет, является ли допустимым ModelState, отображает его обратно к модели и передает модель в репозиторий.
Каков самый быстрый способ сделать проект MVC правильным способом? Сначала база данных, EF, затем AutoMapper, затем Views? Или Представления, VModel, EF, База данных? – LamonteCristo