ASP.NET is an open-source server-side web application framework designed for web development to produce dynamic web pages. It was developed by Microsoft to allow programmers to build dynamic web sites, web applications and web services.
It was first released in January 2002 with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages (ASP) technology. ASP.NET is built on the Common Language Runtime (CLR), allowing programmers to write ASP.NET code using any supported .NET language. The ASP.NET SOAP extension framework allows ASP.NET components to process SOAP messages.
ASP.NET's successor is ASP.NET Core. It is a re-implementation of ASP.NET as a modular web framework, together with other frameworks like Entity Framework. The new framework uses the new open-source .NET Compiler Platform (codename "Roslyn") and is cross platform. ASP.NET MVC, ASP.NET Web API, and ASP.NET Web Pages (a platform using only Razor pages) have merged into a unified MVC 6.
|Initial release||January 5, 2002|
4.7.1 / October 17, 2017
|Written in||.NET languages|
|Operating system||Microsoft Windows, Linux, macOS|
|License||Apache License 2.0|
|Internet media type|
ASP.NET supports a number of programming models for building web applications:
Other ASP.NET extensions include:
System.Web.IHttpHandlerinterface. Unlike ASP.NET Pages, they have no HTML-markup file, no events and other supporting. All they have is a code-file (written in any .NET-compatible language) that writes some data to the server HTTP response. HTTP handlers are similar to ISAPI extensions.
On IIS 6.0 and lower, pages written using different versions of the ASP framework cannot share session state without the use of third-party libraries. This does not apply to ASP.NET and ASP applications running side by side on IIS 7. With IIS 7.0, modules may be run in an integrated pipeline that allows modules written in any language to be executed for any request.
Several available software packages exist for developing ASP.NET applications:
|Visual Studio Code||Microsoft and community||Freeware open source|
|Microsoft Visual Studio||Microsoft||Free and commercial|
|Microsoft Visual Web Developer Express||Microsoft||Registerware|
|CodeGear Delphi||Embarcadero Technologies||Commercial|
|Macromedia HomeSite||Adobe Systems||Commercial|
|Microsoft Expression Web||Microsoft||Free|
|Microsoft SharePoint Designer||Microsoft||Free|
|MonoDevelop||Xamarin and the Mono community||Free open source|
|Adobe Dreamweaver||Adobe Systems||Commercial|
|SharpDevelop||ICSharpCode Team||Free open source|
It is not essential to use the standard Web forms development model when developing with ASP.NET. Noteworthy frameworks designed for the platform include:
The ASP.NET releases history tightly correlates with the .NET Framework releases:
|Date||Version||Remarks||New ASP.NET related features|
|January 16, 2002||Old version, no longer supported: 1.0||First version
released together with Visual Studio .NET
|April 24, 2003||Old version, no longer supported: 1.1||released together with Windows Server 2003
released together with Visual Studio .NET 2003
|November 7, 2005||Old version, no longer supported: 2.0||
|November 21, 2006||Old version, no longer supported: 3.0|
|November 19, 2007||Old version, no longer supported: 3.5||Released with Visual Studio 2008 and Windows Server 2008|
|August 11, 2008||Old version, no longer supported: 3.5 Service Pack 1||Released with Visual Studio 2008 Service Pack 1||
|April 12, 2010||Old version, no longer supported: 4.0||
Parallel extensions and other .NET Framework 4 features
The two new properties added in the Page class are MetaKeyword and MetaDescription.
|August 15, 2012||Old version, no longer supported: 4.5||Released with Visual Studio 2012 and Windows Server 2012 for Windows 8
Parallel extensions and other .NET Framework 4.5 features
|October 17, 2013||Old version, no longer supported: 4.5.1||Released with Visual Studio 2013 for Windows Server 2012 R2 and Windows 8.1|
|May 5, 2014||Older version, yet still supported: 4.5.2||
|July 29, 2015||Older version, yet still supported: 4.6||Released with Visual Studio 2015 and EF 7 Previews for Windows Server 2016 and Windows 10||
|November 30, 2015||Older version, yet still supported: 4.6.1|
|August 2, 2016||Older version, yet still supported: 4.6.2||
|April 11, 2017||Older version, yet still supported: 4.7||Included in the Windows 10 Creators Update||
|October 17, 2017||Current stable version: 4.7.1||Included in the Windows 10 Fall Creators Update.||
|November 18, 2015||Old version, no longer supported: 5 RC1||This version was later separated from ASP.NET and brought into a new project called ASP.NET Core, whose versioning started at 1.0.||An entirely new project with different development tenets and goals|
The Mono Project supports "everything in .NET 4.5 except WPF, WWF, and with limited WCF and limited ASP.NET 4.5 async stack." ASP.NET can be run with Mono using one of three options:- Apache hosting using the mod_mono module, FastCGI hosting, and XSP.
The .NET Foundation is an organization incorporated on March 31, 2014, by Microsoft to improve open-source software development and collaboration around the .NET Framework. It was launched at the annual Build 2014 conference held by Microsoft. The foundation is license-agnostic, and projects that come to the foundation are free to choose any open-source license, as defined by the Open Source Initiative (OSI). The foundation uses GitHub to host the open-source projects it manages.Anyone who has contributed to .NET Foundation projects can apply to be a .NET Foundation member. Members can vote in elections for the board of the directors and will preserve the health of the organization.The foundation began with twenty-four projects under its stewardship including .NET Compiler Platform ("Roslyn") and the ASP.NET family of open-source projects, both open-sourced by Microsoft Open Technologies, Inc. (MS Open Tech). Xamarin contributed six of its projects including the open source email libraries MimeKit and MailKit. As of April 2019, it is the steward of 556 projects, including: .NET Core, Entity Framework (EF), Managed Extensibility Framework (MEF), Umbraco, MSBuild, NuGet, Orchard CMS and WorldWide Telescope. Many of these projects are also listed under Outercurve Foundation project galleries.
Its board of directors consists of Scott Hunter (Microsoft), Miguel de Icaza (Microsoft-owned Xamarin), and Oren Novotny..NET Framework
.NET Framework (pronounced as "dot net") is a software framework developed by Microsoft that runs primarily on Microsoft Windows. It includes a large class library named as Framework Class Library (FCL) and provides language interoperability (each language can use code written in other languages) across several programming languages. Programs written for .NET Framework execute in a software environment (in contrast to a hardware environment) named the Common Language Runtime (CLR). The CLR is an application virtual machine that provides services such as security, memory management, and exception handling. As such, computer code written using .NET Framework is called "managed code". FCL and CLR together constitute the .NET Framework.
FCL provides user interface, data access, database connectivity, cryptography, web application development, numeric algorithms, and network communications. Programmers produce software by combining their source code with .NET Framework and other libraries. The framework is intended to be used by most new applications created for the Windows platform. Microsoft also produces an integrated development environment largely for .NET software called Visual Studio.
.NET Framework began as proprietary software, although the firm worked to standardize the software stack almost immediately, even before its first release. Despite the standardization efforts, developers, mainly those in the free and open-source software communities, expressed their unease with the selected terms and the prospects of any free and open-source implementation, especially regarding software patents. Since then, Microsoft has changed .NET development to more closely follow a contemporary model of a community-developed software project, including issuing an update to its patent promising to address the concerns.
.NET Framework led to a family of .NET platforms targeting mobile computing, embedded devices, alternative operating systems, and web browser plug-ins. A reduced version of the framework, .NET Compact Framework, is available on Windows CE platforms, including Windows Mobile devices such as smartphones. .NET Micro Framework is targeted at very resource-constrained embedded devices. Silverlight was available as a web browser plugin. Mono is available for many operating systems and is customized into popular smartphone operating systems (Android and iOS) and game engines. .NET Core targets the Universal Windows Platform (UWP), and cross-platform and cloud computing workloads.ASP.NET AJAX
ASP.NET AJAX, formerly called Atlas, is a set of extensions to ASP.NET developed by Microsoft for implementing Ajax functionality. It is released under the Microsoft Public License (Ms-PL).ASP.NET Core
ASP.NET Core is a free and open-source web framework, and higher performance than ASP.NET, developed by Microsoft and the community. It is a modular framework that runs on both the full .NET Framework, on Windows, and the cross-platform .NET Core. However the expected version ASP.NET Core 3 was announced to work only on .NET Core dropping support of .NET Framework.The framework is a complete rewrite that unites the previously separate ASP.NET MVC and ASP.NET Web API into a single programming model.
Despite being a new framework, built on a new web stack, it does have a high degree of concept compatibility with ASP.NET MVC. ASP.NET Core applications supports side by side versioning in which different applications, running on the same machine, can target different versions of ASP.NET Core. This is not possible with previous versions of ASP.NET.ASP.NET Dynamic Data
ASP.NET Dynamic Data is a Ruby on Rails-inspired web application scaffolding framework from Microsoft, shipped as an extension to ASP.NET, that can be used to build data-driven web applications. It exposes tables in a database by encoding it in the URI of the ASP.NET web service, and the data in the table is automatically rendered to HTML. The process of rendering can be controlled using custom design templates. Internally, it discovers the database schema by using the database metadata.
ASP.NET Dynamic Data was originally shipped as part of the "ASP.NET 3.5 Extensions" package in 2007, and was incorporated into the .NET Framework 3.5 Service Pack 1, which was released August 11, 2008.ASP.NET MVC
The ASP.NET MVC is a web application framework developed by Microsoft, which implements the model–view–controller (MVC) pattern. It is open-source software, apart from the ASP.NET Web Forms component which is proprietary.
In the later versions of ASP.NET, ASP.NET MVC, ASP.NET Web API, and ASP.NET Web Pages (a platform using only Razor pages) will merge into a unified MVC 6.ASP.NET Razor
Razor is an ASP.NET programming syntax used to create dynamic web pages with the C# or VB.NET programming languages. Razor was in development in June 2010 and was released for Microsoft Visual Studio 2010 in January 2011. Razor is a simple-syntax view engine and was released as part of MVC 3 and the WebMatrix tool set.ASP.NET Web Forms
ASP.NET Web Forms is a web application framework and one of several programming models supported by the Microsoft ASP.NET technology. Web Forms applications can be written in any programming language which supports the Common Language Runtime, such as C# or Visual Basic. Main building blocks of Web Forms pages are server controls, which are reusable components responsible for rendering HTML markup and responding to events. A technique called view state is used to persist the state of server controls between normally stateless HTTP requests.Web Forms was included in the original .NET Framework 1.0 release in 2002 (see .NET Framework version history and ASP.NET version history), as the first programming model available in ASP.NET. Unlike newer ASP.NET components, Web Forms is not supported by ASP.NET Core.Active Server Pages
Active Server Pages (ASP), later known as Classic ASP or ASP Classic, is Microsoft's first server-side script engine for dynamically generated web pages.
ASP.NET, first released in January 2002, has superseded ASP.Adobe Dreamweaver
Adobe Dreamweaver is a proprietary web development tool from Adobe Inc.. It was created by Macromedia in 1997 and developed by them until Macromedia was acquired by Adobe Systems in 2005.Adobe Dreamweaver is available for the macOS and Windows operating systems.
An ASP.NET HTTP handler is a process that runs in response to a request made to an ASP.NET Web application. The most common handler is the ASP.NET page handler that processes .aspx files. When users request an .aspx file, the request is processed by the page through the page handler.
HTTP handlers were not present in the "Classic" ASP. They implement the System.Web.IHttpHandler interface. Unlike ASP.NET Pages, they have no HTML-markup file, no events and other supporting. All they have is a code-file (written in any .NET-compatible language) that writes some data to the server HTTP response. HTTP handlers are similar to ISAPI extensions.
An HTTP module is an assembly that is called on every request that is made to your application. HTTP modules are called as part of the ASP.NET request pipeline and have access to life-cycle events throughout the request. HTTP modules let you examine incoming and outgoing requests and take action based on the request.
Unlike pages, that have ".aspx" file extension, ASP.NET handlers by default have ".ashx" file extension.
Handlers are considered to be more lightweight object than pages. That's why they are used to serve dynamically-generated images, on-the-fly generated PDF-files and similar content to the web browser.Internet Information Services
Internet Information Services (IIS, formerly Internet Information Server) is an extensible web server created by Microsoft for use with the Windows NT family. IIS supports HTTP, HTTP/2, HTTPS, FTP, FTPS, SMTP and NNTP. It has been an integral part of the Windows NT family since Windows NT 4.0, though it may be absent from some editions (e.g. Windows XP Home edition), and is not active by default.List of content management systems
This is a list of notable content management systems that are used to organize and facilitate collaborative content creation. Many of them are built on top of separate content management frameworks.Microsoft WebMatrix
Microsoft WebMatrix is a discontinued cloud-connected website builder and HTML editor for Windows, geared towards web development. WebMatrix enables developers to build websites using built-in templates or popular open-source applications, with full support for ASP.NET, PHP, Node.js and HTML5. Microsoft developed WebMatrix for the purpose of providing web developers with coding, customization, and publishing capabilities all in one place.Mod mono
mod_mono is a module for the Apache HTTP Server that allows for hosting of ASP.NET pages and other assemblies on multiple platforms by use of the Mono development platform.
A similar module called mod_aspdotnet by another group allows hosting of ASP.NET pages and other assemblies with the Microsoft .NET framework but because of that dependency, will only function on Windows platforms.MonoRail (software)
MonoRail (formerly called Castle on Rails), a component of the Castle Project, is an open source web application framework built on top of the ASP.NET platform. Inspired by Ruby on Rails Action Pack, MonoRail differs from standard ASP.NET Web Forms development by enforcing separation of concerns using a model–view–controller (MVC) architecture. The framework is commonly used in conjunction with Castle ActiveRecord, an ORM layer built on NHibernate. In January 2010, version 2.0 of MonoRail was released, however, many projects use the trunk version of the source to take advantage of new features without waiting for official releases.
Although the project's name is MonoRail, it does not have any affiliation with the Mono project.OpenRasta
OpenRasta is a development framework targeting the Microsoft .NET platform for building web-based applications and services, and distributed under an Open-Source MIT License.
By focusing development around resources and HTTP methods, OpenRasta simplifies the creation of ReST-friendly interfaces.
Developed to respect modern development practices, coming prepackaged with an inversion of control container, and enforcing the use of dependency injection throughout the framework, OpenRasta is a framework implementing an architectural pattern close to Model–View–Controller, called Resource–Codec–Handler.
OpenRasta also supports advanced HTTP features such as content negotiation, digest access authentication and full control of response codes sent back to a client.Hosting of an application built on OpenRasta is available through ASP.NET, in-memory, in-process through Windows' HTTP APIs, or through any other environment able to receive HTTP requests, as the framework itself has no dependency on ASP.NET.Open Web Interface for .NET
OWIN (Open Web Interface for .NET) is a standard for an interface between .NET Web applications and Web servers. It is a community-owned open-source project. Prior to OWIN, Microsoft's ASP.NET technology was designed on top of IIS, and Web applications could not easily be run on another Web server (although note that despite this the Mono community developed several ASP.NET compatible Web servers, such as XSP). OWIN aims to decouple the relationship between ASP.NET applications and IIS by defining a standard interface. Developers of Web servers can be sure that, if they implement OWIN correctly, ASP.NET applications will run on their server. Similarly, new Web frameworks could be developed as an alternative to ASP.NET. So long as they target OWIN, they will run on any OWIN compatible Web server, including IIS.
In this regard, OWIN aims to do for .NET what Java Servlet and Servlet containers do for the JVM.
Project Katana is a set of OWIN components built by Microsoft.Scott Guthrie
Scott Guthrie is an Executive Vice President of the Cloud and Enterprise group in Microsoft. He is best known for his work on ASP.NET, which he and colleague Mark Anders developed while at Microsoft.He runs the Microsoft Azure (formerly known as Windows Azure) team as well as the development teams that build Windows Server, Microsoft SQL Server, Active Directory, System Center, Visual Studio and .NET.
Guthrie graduated with a degree in computer science from Duke University. Following this, he chose to focus on his major and joined Microsoft in 1997. He frequently presents wearing a signature red shirt and speaks at many of the major Microsoft conferences.
In October 2016, Guthrie unveiled the capabilities of Microsoft’s Azure-based Dynamics 365 service in a demo at a Summit conference in Tampa, Florida.
|Text and multilingual|
Microsoft development tools
|Major APIs and|