📜  ASP.NET简介

📅  最后修改于: 2021-05-29 23:02:36             🧑  作者: Mango

ASP.NET是Microsoft设计和开发的Web应用程序框架。 ASP.NET是开源和.NET Framework的一个子集和经典的ASP(A莫如小号erver P年龄)的继任者。随着.NET Framework 1.0版的发布,它于2002年1月首次发布。让我们想到一个问题,我们在2002年之前使用了哪种技术来开发Web应用程序和服务?答案是经典ASP 。因此,在.NET和ASP.NET之前,有Classic ASP

ASP.NET建立在CLR(公共语言运行时)上,它允许程序员使用任何.NET语言(C#,VB等)执行其代码。它经过专门设计,可与HTTP一起使用,并供Web开发人员创建动态Web页面,Web应用程序,网站和Web服务,因为它提供了HTML,CSS和JavaScript的良好集成。

.NET Framework用于创建各种应用程序和服务,例如控制台,Web和Windows等。但是ASP.NET仅用于创建Web应用程序和Web服务。这就是为什么我们将ASP.NET称为.NET Framework的子集的原因。

下表说明了ASP.NET版本历史记录:

Year Version
2002 1.0
2003 1.1
2005 2.0
2006 3.0
2007 3.5
2008 3.5 SP 1
2010 4.0
2012 4.5
2013 4.5.1
2014 4.5.2
2015 4.6
2015 4.6.1
2016 4.6.2
2017 4.7
2017 4.7.1

注意:在2015年,版本5 RC1出现了,后来又从ASP.NET中分离出来,并变成了一个名为ASP.NET Core Version 1.0的新项目,并且有了一些改进。

什么是Web应用程序?

Web应用程序是仅安装在Web服务器上的应用程序,用户可以使用Web浏览器(例如Microsoft Internet Explorer,Google Chrome,Mozilla FireFox,Apple Safari等)访问该应用程序。还有其他一些技术,例如Java, PHP,Perl ,Ruby on Rails等,可用于开发Web应用程序。 Web应用程序提供了跨平台功能。用户仅需要Web浏览器即可访问Web应用程序。使用.NET框架或其子集开发的Web应用程序,需要在服务器端的Microsoft Internet信息服务(IIS)下执行。 IIS的工作是将Web应用程序生成的HTML代码结果提供给客户端浏览器,客户端浏览器将启动请求,如下图所示。

Web应用程序

不要混淆术语ASP.NET,ASP.NET核心,ASP.NET MVC等。ASP(Active Server Pages)支持许多开发模型,这些模型如下:

  • 经典ASP :这是Microsoft开发的第一种服务器端脚本语言。
  • ASP.NET :它是Web开发框架和Classic ASP的继承者。 ASP.NET 4.6是最新版本。
  • ASP.NET Core :2015年11月,Microsoft发布了5.0版本的ASP.NET,该版本后来被分离,并称为ASP.NET Core。而且,它被认为是ASP.NET的重要重新设计,具有开放源代码和跨平台功能。在此版本之前,ASP.NET仅被视为仅Windows版本。
  • ASP.NET Web窗体:这些是事件驱动的应用程序模型,不被认为是新ASP.NET Core的一部分。这些用于提供服务器端事件和控件以开发Web应用程序。
  • ASP.NET MVC :它是可以与新的ASP.NET Core合并的Model-View-Controller应用程序模型。它用于构建动态网站,因为它提供了快速的开发。
  • ASP.NET Web Pages :这些是可以合并到ASP.NET Core中的单页应用程序。
  • ASP.NET API :它是Web应用程序编程接口(API)。

另外,要创建Web应用程序,ASP.NET提供3种开发样式,分别是ASP.NET网页,ASP.NET MVC和Web窗体。

为什么选择ASP.NET?

有很多原因使ASP.NET在开发人员中很受欢迎。下面列出了一些原因:

扩展.NET Framework: ASP.NET是.NET Framework的子集,因为它通过一些库和工具来扩展.NET Framework,以开发Web应用程序。它添加到.NET Framework中的是用于常见Web模式的库,例如MVC编辑器扩展用于处理Web请求的基本框架以及诸如Razor之类的网页模板语法

性能:它比市场上其他Web框架快。

后端代码:借助ASP.NET,您可以编写用于数据访问和C#中任何逻辑的后端代码。

动态页面:在ASP.NET中,Razor提供了用于借助C#和HTML开发动态网页的语法。 ASP.NET可以与JS(JavaScript)集成,并且还包括用于SPA(Single Page Application)的React和Angular之类的框架。

支持不同的操作系统:您可以在Windows,Linux,Docker和MacOS上开发和执行ASP.NET应用程序。 Visual Studio提供了用于构建不同OS的.NET应用程序的工具。