NET Web 窗体和 ASP.NET 网页

ASP.NET Web 窗体和 ASP.NET Web 页面的区别是什么?

这里 表示 Web 页面和 Web 窗体是不同的方法。

54951 次浏览

NET Full 有三种风格,还有 ASP.NET Core (在 Linux 和 Mac 上运行的新版本)。

对于 ASP.NET Full

第一个是最古老的,称为 Web 窗体。基本上,它是一个高级的面向组件的 Web 框架,使用按钮和网格等控件来封装行为和视图。

它是 ASP.NET 最流行的风格,但是由于缺乏对生成的标记的控制而受到批评。目前大多数新项目都是 ASP.NET MVC,但是肯定有很多 Web 窗体代码。虽然这是我个人的最爱,但是我必须指出,这是一种不好的学习 web 编程的方式,因为它对你隐藏了实现细节(当你有经验时这是好的) ,而且学起来有点复杂。

资料来源: http://www.asp.net/web-forms

NET MVC 是 ASP.NET 的 MVC 模式的实现。一些人声称使用单元测试和良好的关注点分离开发可维护的应用程序比使用 Web Forms 更容易。

我不同意这一点,我认为使用 MVP 这样的模式可以实现与 Web Forms 相同的效果。另一方面,ASP.NET MVC 有一个很大的优势——它允许对生成的标记进行完全控制。这对于现代 Web 开发风格来说非常重要,因为很多东西都是由 JavaScript 控制的。例如,在 MVC 视图上添加花哨的动画比在 Web 窗体上更容易。

资料来源: http://www.asp.net/mvc

NET Web Pages 是(目前)针对小型项目和初学者开发的最新版本(至少在我看来)。它适合于开发10页左右的小型项目。大多数逻辑都是以我称之为“基本 PHP 风格”的方式在每个页面的单个文件中编写的。它使用 剃刀语法注入服务器端代码。

资料来源: http://www.asp.net/web-pages

请注意,Web 窗体使用页面(与 MVC 不同) ,因此 ASP.NET Web 页面是什么存在混淆。

对于 ASP.NET Core,使用了一个新版本的 ASP.NET MVC,它在概念上与上面描述的 ASP.NET MVC 相同。有趣的是,在 ASP.NET Core 2.0中,还有一个叫做 剃刀页的东西,它本质上是 ASP.NET Web Pages 的一个更高级的版本。