ASP.NET is an
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
,
server-side web-application framework designed for
web development
Web development is the work involved in developing a website for the Internet (World Wide Web) or an intranet (a private network). Web development can range from developing a simple single static page of plain text to complex web applications ...
to produce
dynamic web pages. It was developed by
Microsoft to allow
programmer
A computer programmer, sometimes referred to as a software developer, a software engineer, a programmer or a coder, is a person who creates computer programs — often for larger computer software.
A programmer is someone who writes/creates ...
s to build dynamic
web sites,
applications and
service
Service may refer to:
Activities
* Administrative service, a required part of the workload of university faculty
* Civil service, the body of employees of a government
* Community service, volunteer service for the benefit of a community or a pu ...
s. The name stands for Active Server Pages Network Enabled Technologies.
It was first released in January 2002 with version 1.0 of the
.NET Framework
The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
and is the successor to Microsoft's
Active Server Pages (ASP) technology. ASP.NET is built on the
Common Language Runtime
The Common Language Runtime (CLR), the virtual machine component of Microsoft .NET Framework, manages the execution of .NET programs. Just-in-time compilation converts the managed code (compiled intermediate language code) into machine instructio ...
(CLR), allowing programmers to write ASP.NET code using any supported
.NET language
The domain name net is a generic top-level domain (gTLD) used in the Domain Name System of the Internet. The name is derived from the word ''network'', indicating it was originally intended for organizations involved in networking technologies ...
. The ASP.NET
SOAP extension framework allows ASP.NET components to process SOAP messages.
ASP.NET's successor is
ASP.NET Core
ASP.NET Core is a free and open-source web framework and successor to ASP.NET, developed by Microsoft. It is a modular framework that runs on both the full .NET Framework, on Windows, and the cross-platform .NET. However, ASP.NET Core version 3 on ...
. 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
.NET Compiler Platform, also known by its codename Roslyn, is a set of open-source compilers and code analysis APIs for C# and Visual Basic (VB.NET) languages from Microsoft. (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.
Programming models
ASP.NET supports a number of programming models for building web applications:
*
ASP.NET Web Forms – A framework for building modular pages out of components, with UI events being processed server-side.
*
ASP.NET MVC – allows for building web pages using the
model–view–controller
Model–view–controller (MVC) is a software architectural pattern commonly used for developing user interfaces that divide the related program logic into three interconnected elements. This is done to separate internal representations of infor ...
design pattern.
*
ASP.NET Web Pages
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-synta ...
– A lightweight syntax for adding dynamic code and data access directly inside HTML markup.
*
ASP.NET Web API – A framework for building
Web APIs on top of the
.NET Framework
The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
.
*
ASP.NET WebHooks – Implements the
Webhook pattern for subscribing to and publishing events via HTTP.
*
SignalR – A real-time communications framework for bi-directional communication between client and server.
Other ASP.NET extensions include:
*
ASP.NET Handler – Components that 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.
*
ASP.NET AJAX – An extension with both client-side as well as server-side components for writing ASP.NET pages that incorporate
Ajax functionality.
*
ASP.NET Dynamic Data – A
scaffolding extension to build data driven web applications.
IIS integrated pipeline
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.
Third-party frameworks
It is not essential to use the standard Web forms development model when developing with ASP.NET. Noteworthy frameworks designed for the platform include:
*
Base One Foundation Component Library
The Base One Foundation Component Library (BFC) is a rapid application development toolkit for building secure, fault-tolerant, database applications on Windows and ASP.NET. In conjunction with Microsoft's Visual Studio integrated development envi ...
(BFC) is
RAD framework for building .NET
database and
distributed computing applications.
*
DotNetNuke is an open-source solution that provides both a web application framework and a content management system that allows for advanced extensibility through modules, skins, and providers.
*
Castle MonoRail, an open-source
MVC framework with an execution model similar to
Ruby on Rails. The framework is commonly used with
Castle ActiveRecord, an ORM layer built on
NHibernate.
Versions
The ASP.NET releases history tightly correlates with the
.NET Framework
The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
releases:
Other implementations
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
The Apache () are a group of culturally related Native American tribes in the Southwestern United States, which include the Chiricahua, Jicarilla, Lipan, Mescalero, Mimbreño, Ndendahe (Bedonkohe or Mogollon and Nednhi or Carrizaleño an ...
hosting using the
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 ...
module,
FastCGI hosting, and
XSP.
See also
*
ELMAH (Error Logging Modules and Handlers), an ASP.NET debugging tool
References
Citations
General sources
*
External links
*
*
ASP.NETon
MSDN
Some of new features in ASP.NET 4 and vs 2010 IDE
{{DEFAULTSORT:Asp.Net
Free and open-source software
Microsoft application programming interfaces
Microsoft free software
Microsoft Visual Studio
Software using the Apache license
Template engines
Web frameworks