Я разработчик asp.net Web Forms, и я знаю основы Asp.net MVC. Разработчики говорят о преимуществах MVC, но я не нашел четкого или убедительного описания для использования MVC над Asp.NET.
Это не дублирующий вопрос, и я прошел почти все аналогичный вопрос, но не получил более четкого описания в отношении с реальным примером жизни. Я ценю и рассчитываю на объяснение каждый вопрос, упомянутый ниже, с примером реальной жизни, пожалуйста не отмечайте его как дублирующее.
Я знаю, что вы не можете заменить Asp.NET Web Forms с помощью Asp.NET MVC, но у нас есть следующие преимущества в MVC:
- Разделение проблем (SoC). Мы можем достичь этого в asp.net также, добавив компонент BAL на самом деле в MVC, нам нужно изолировать бизнес-логику от методов действий контроллера. для разделения Model-View-Controller в MVC? то как насчет бизнес-логики. Просьба представить пример реальной жизни, который рассмотрит как веб-формы, так и MVC.
- Включить полный контроль над отображаемым HTML. Веб-формы также обеспечивают контроль над Html, не так ли? Считается, что html-рендеринг в Web Forms более абстрагируется, чем то, что делает html-помощники в MVC. Кто-нибудь, пожалуйста, объясните это примером, рассматривающим как Web Forms, так и MVC, поскольку я становлюсь более смущенным в этой точке.
- Включить тестовую разработку (TDD). Если вы разделили свою бизнес-логику на BAL, то вы достигли TDD? Есть ли сценарий, в котором MVC будет точным выбором по веб-формам? Просьба привести пример для тех же
- Нет событий ViewState и PostBack. Мы можем управлять представлением в Web Forms, которое связано со стоимостью усилий, поскольку в MVC мы можем поддерживать состояние с помощью Viewbag, Tempdata, поскольку веб-апатрид существует, есть какой-то механизм что MVC сохраняет свое состояние как скрытые поля для Web Forms, а затем как MVC улучшает производительность и размер страницы с точки зрения statefullness? Пример с учетом оценки веб-форм и MVC.
- Простая интеграция с jQuery: "Asp.NET Web Forms генерирует свой собственный идентификатор для элементов управления", это единственное соображение для удобства интеграции фреймворков JavaScript? если да, то мы можем использовать ClientIDMode в элементе управления asp.net в веб-формах