Выше написано, чтобы "убедиться, что вы ответите на вопрос" ..... ни один из вышеперечисленных действительно не делает этого ..... просто скажу вам что-то найти.
Так ....
a) Напишите ваши хранимые процедуры для обработки действий CRUD, т.е. получите одну запись, получите список записей, сохраните запись (вставьте и обновите)
и удалить запись и, возможно, специальные алгоритмы процедур
b) Напишите классы доступа к данным, у которых есть методы, использующие эти хранимые процедуры, и верните структуру данных (класс) требуемого типа, полученную из набора результатов SQL. Вам, конечно, придется спроектировать их ..... они обеспечивают вашу модель (M) в шаблоне MVC. Таким образом, ваш контроллер будет ссылаться на ваше пространство имен доступа или класс, а ваше представление будет использовать Razor @model для ссылки на соответствующую структуру данных.
Ключевым моментом является генерация классов, которые можно использовать в качестве модели .... как вы генерируете эти классы, не имеет значения (EF, NHibernate,
хранимые процедуры) .... или хотя бы это ваше решение. Когда у вас есть эти классы, вы можете использовать их в Controller и View.
Большинство примеров, описывающих MVC, используют EF для генерации классов. Но я всегда говорю, что вы должны получать данные из базы данных независимо от того, и вы должны понимать, какой SQL используется EF для получения / сохранения записей.