Теперь я выполнил свое первое веб-приложение с использованием ASP.NET MVC и в целом, но я до сих пор не понимаю, почему это получает всю похвалу и славу. Может быть, я упрям. Я знаю, что отличное MVC - это разделение сил между слоем представления и бизнес-объектом или слоем данных наряду с его безстоящей операцией. Я также знаю, что когда вы работаете с представлением, кажется, что код менее читабельен (см. Мой пример ниже).
Итак, я думаю, мой вопрос... Если разделение вызывает беспокойство, почему бы просто не разделить.
Веб-формы Просмотр кода:
//UI
<h2><asp:Label ID="lblPageHeader" runat="server" /></h2>
Код веб-форм:
//CODE BEHIND
this.lblPageHeader.Text = myObject.Header;
Просмотр кода MVC:
//UI
<h2><%= Html.Encode(Model.PageTitle) %></h2>
Код контроллера MVC:
index = new Index
{
PageText = sb.ToString(),
PageTitle = "WELCOME"
};
return View(index);
Опять же, я могу быть упрямым, но одна из вещей, которые мне очень нравятся в WebForms, - это легкость в настройке свойств объекта, таких как DataSources и Text. Похоже, что это совсем другое в MVC и менее читаемо, что заставляет меня задуматься о долгосрочном обслуживании.
ИЗМЕНИТЬ Изучив типизированные модели, я думаю, что читаемость кода значительно улучшилась.