ASP.NET MVC> ASP.NET WebForms,为什么?

前端之家收集整理的这篇文章主要介绍了ASP.NET MVC> ASP.NET WebForms,为什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我现在已经完成了使用ASP.NET MVC的第一个Web应用程序,总体来说,我还没有抓住为什么这样得到所有的赞誉和荣耀.也许我很顽固我知道什么使MVC伟大的是表现层与业务对象或数据层之间的分离以及无状态操作.我也知道,当你使用这个视图时,看起来代码的可读性差(见我下面的例子).

所以我猜我的问题是…如果分离是关心,为什么不分开.

Web表单查看代码

//UI
<h2><asp:Label ID="lblPageHeader" runat="server" /></h2>

Web表单代码背后:

//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和较少的可读性,这使我想知道长期维护.

编辑
在研究了类型模型后,我认为代码的可读性大大提高.

解决方法

ASP.NET MVC Best Practices,Tips and Tricks

我会写:

<h2><%= Html.Encode(Model.Title) %></h2>

(可以在类型化视图的帮助下)

代替

<h2><%= Html.Encode((MyApp.MyObject)ViewData["PageObject"].Header) %></h2>

我认为这是关于你如何使用它.如果你对经典的ASP.NET感到更加开心,那可能是一个比较好的主意.此外,您还可以从ASP.NET MVC世界(如UI和逻辑分离)中获取好的东西,并将其带入经典的ASP.NET.

原文链接:https://www.f2er.com/aspnet/249867.html

猜你在找的asp.Net相关文章