2010-09-11 3 views
4

В настоящее время я работаю с ASP.NET и собираюсь начать изучение ASP.NET MVC (2).
Итак, прежде чем открыть первую толстую книгу и пройти первый длинный учебник, какие самые важные (новые) концепции нужно иметь в виду? Каковы основные новые функции, о которых я должен знать?Каковы основные понятия, которые нужно знать при переносе моего мышления с ASP.NET на ASP.NET MVC (2)?

Большое спасибо.

ответ

4

Нет viewstate. Нет элементов управления на стороне сервера. Думайте RESTful/stateless; это цикл запроса/ответа, а не событие, которое обрабатывается.

Стоит подумать о том, чтобы отправиться в путешествие по Ruby/Rails, чтобы изучить концепции полностью за пределами стека .NET, прежде чем вы займетесь MVC. Я знаю, что я смог забрать его довольно быстро, потому что я уже занимался Ruby/Rails достаточно, чтобы ознакомиться с парадигмой.

EDIT: Я бы также добавил, что я считаю, что разделение моделей взглядов от бизнес-моделей (сущностей) является хорошей идеей. Вы должны определенно использовать строго типизированные представления и передавать модели вокруг, а не передавать «нетипизированные» ViewData в свои представления и напрямую вытаскивать «нетипизированные» данные из поставщиков запроса или стоимости. Использование моделей и создание каркаса для привязки модели для вас упростят проверку и сохранение ваших взглядов. Использование строго типизированных данных в ваших представлениях по крайней мере даст вам некоторую проверку времени компиляции.

+0

Woooooooow ... (-: Немного больше информации может быть полезно, хотя (-: –

+0

@Oren - вы просили ключевые понятия, а не подробный учебник. Я предположил, что вы знаете, что это MVC (Model-View- Controller), так что не затрагивали эту схему (у википедии есть хорошая статья). Я просто перечислил основные «gotchas», как я вижу это с точки зрения мышления. Вы должны обернуть голову тем фактом, t получить «события», подобные тем, что вы делаете в WebForms, и у вас нет волшебного контейнера для вашего состояния. Отсутствие элементов управления на стороне сервера связано с присущим разграничением проблем, которые делают MVC хорошим шаблоном развития (и гораздо более проверяемым) – tvanfosson

+0

Спасибо. Отличный ответ (-: –