ASP.NET Web表单和MVC之间的主要区别是什么

时间:2020-03-06 14:48:38  来源:igfitidea点击:

我知道MVC是什么,并且可以在Web窗体中工作,但我不知道MVC会有什么不同。我猜模型背后的代码会有所不同。那么,就像webforms减去后面的代码,而是将其放在控制器中一样吗?

我看到还有其他相关文章,但我没有解决。

解决方案

此处的视频教程有助于描述差异。

对于初学者,MVC不使用<asp:control>控件,而是优先使用良好的旧标准<input>等等。因此,我们不会像在ASP中那样将"事件"添加到在代码隐藏中执行的控件。它依靠标准的HTTP POST来做到这一点。

它不使用viewstate对象。

它允许更智能的url映射,尽管现在已经分离了Routing名称空间,但我不知道它是否可以用于WebForms?

自动测试Web部件要容易得多。

它使UI逻辑与"后端"组件的分离更加容易。

关于问题可以说的太多了。

MVC可以将关注点,可测试性和测试驱动的开发(TDD)完全分离。它支持干净的RESTful URL,并且非常可扩展……这意味着我们可以交换查看引擎,路由机制以及许多其他我们可能不喜欢的东西。

有关其他信息,建议我们阅读Dino Esposito的博客文章,标题为ASP.NET MVC框架的体系结构视图。在这篇文章中,他比较了使用MVC的经典代码背后方法之间的许多差异。