📅  最后修改于: 2020-12-27 13:19:53             🧑  作者: Mango
它是由Microsoft设计和开发的Web框架。它用于开发网站,Web应用程序和Web服务。它提供了HTML,CSS和JavaScript的出色集成。它于2002年1月首次发布。它基于公共语言运行时(CLR)构建,并允许程序员使用任何受支持的.NET语言编写代码。
ASP.NET是Microsoft .NET Framework的一部分。下图显示了组件堆栈。
图: .NET Framework组件
下表显示了ASP.NET中包含的版本和功能。
Date | Version | Features |
---|---|---|
January 16, 2002 | 1.0 | Object-oriented Web application development supporting inheritance, polymorphism and other standard OOP features. |
April 24, 2003 | 1.1 | Mobile controls and Automatic input validation. |
November 7, 2005 | 2.0 | New data controls (GridView, FormView, DetailsView) New technique for declarative data access (SqlDataSource, ObjectDataSource, XmlDataSource controls) Navigation controls Master pages Login controls Themes Skins Web parts Personalization services Full pre-compilation New localization technique Support for 64-bit processors Provider class model |
November 21, 2006 | 3.0 | Windows Presentation Foundation (WPF) Windows Workflow Foundation (WF) Windows Communication Foundation, which can use ASP.NET to host services Windows CardSpace, which uses ASP.NET for login roles |
November 19, 2007 | 3.5 | New data controls (ListView, DataPager) ASP.NET AJAX included as part of the framework Support for HTTP pipelining and syndication feeds. WCF support for RSS, JSON, POX and Partial Trust All the .NET Framework 3.5 changes, like LINQ etc. |
August 11, 2008 | 3.5 Service Pack1 | Incorporation of ASP.NET Dynamic Data Support for controlling browser history in an ASP.NET AJAX application Ability to combine multiple JavaScript files into one file for more efficient downloading New namespaces System.Web.Abstractions and System.Web.Routing |
April 12, 2010 | 4.0 | The two new properties added in the Page class are MetaKeyword and MetaDescription. |
August 15, 2012 | 4.5 | |
October 17, 2013 | 4.5.1 | Bootstrap 3.0 Web API 2: OAuth 2.0, OData improvements, CORS MVC 5: Attribute routing, authentication filters and filter overrides EF 6 SignalR OWIN |
May 5, 2014 | 4.5.2 | Higher reliability HTTP header inspection and modification methods New way to schedule background asynchronous worker tasks |
July 20, 2015 | 4.6 | HTTP/2 support when running on Windows 10 More async task-returning APIs |
ASP.NET提供了三种用于创建Web应用程序的开发样式:
这是一个事件驱动的开发框架。它用于开发具有强大数据访问权限的应用程序。它提供服务器端控件和事件以创建Web应用程序。它是ASP.NET框架的一部分。我们将在下一章中进一步讨论。
它为我们提供了一种MVC(模型视图控制器),基于模式的方式来构建动态网站。它实现了关注点的清晰分离,使您可以完全控制标记,从而实现愉快而敏捷的开发。它还提供了许多功能,可以快速开发以创建出色的应用程序。我们将在下一章中进一步讨论。
它用于创建动态网页。它提供了一种快速而轻巧的方式来将服务器代码与HTML结合在一起。它有助于添加视频,链接到社交网站。它还提供了其他功能,例如您可以创建符合最新Web标准的精美网站。
所有这些都是稳定且装备精良的框架。我们可以使用其中任何一个来创建Web应用程序。它们也基于.NET Framework,并共享.NET和ASP.NET的核心功能。
我们可以使用任何开发样式来创建应用程序。样式的选择取决于程序员的技能和经验。
尽管每个框架彼此独立,但是我们可以在应用程序的任何级别上组合和使用任何框架。例如,要开发客户端交互模块,我们可以使用MVC,对于数据控制,我们可以使用Web窗体。
下表说明了每种开发模型。
Model | Skills | Development style | Experience |
---|---|---|---|
Web Forms | Win Forms, WPF, .NET | Rapid development using a rich library of controls that encapsulate HTML markup | Mid-Level, Advanced RAD |
MVC | Ruby on Rails, .NET | Full control over HTML markup, code and markup separated, and easy to write tests. The best choice for mobile and single-page applications (SPA). | Mid-Level, Advanced |
Web Pages | Classic ASP, PHP | HTML markup and your code together in the same file | New, Mid-Level |