ASP.NET Razor
Programming syntax for ASP.NET
From Wikipedia, the free encyclopedia
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[4] and was released for Microsoft Visual Studio 2010 in January 2011.[5] Razor is a simple-syntax view engine and was released as part of MVC 3 and the WebMatrix tool set.[5]
| Razor | |
|---|---|
| Original author | Microsoft |
| Developer | .NET Foundation |
| Initial release | June 2010 |
| Stable release | 3.3.0
/ October 23, 2023[1] |
| Preview release | 4.0.0-rc1
/ November 18, 2015 |
| Written in | C#, VB.NET, HTML |
| Operating system | Microsoft Windows[2] |
| Type | Web application framework |
| License | Apache License 2.0[3] |
| Website | www |
| Repository | github github github |
| Razor file formats | |
|---|---|
| Filename extension | .razor, .cshtml, .vbhtml |
| Internet media type |
text/html |
| Developed by | Microsoft |
Razor became a component of AspNetWebStack and then became a part of ASP.NET Core.[6]
Design
The Razor syntax is a template markup syntax, based on the C# programming language, that enables the programmer to use an HTML construction workflow.[clarification needed] Instead of using the ASP.NET Web Forms (.aspx) markup syntax with <%= %> symbols to indicate code blocks, Razor syntax starts code blocks with an @ character and does not require explicit closing of the code-block.
The idea behind Razor is to provide an optimized syntax for HTML generation using a code-focused templating approach, with minimal transition between HTML and code.[7] The design reduces the number of characters and keystrokes, and enables a more fluid coding workflow by not requiring explicitly denoted server blocks within the HTML code.[4] Other advantages that have been noted:[8]
- Supports IntelliSense – statement completion support
- Supports "layouts" – an alternative to the "master page" concept in classic Web Forms (.aspx)
- Unit testable