ASP.NET Razor: Difference between revisions

Content deleted Content added
Corrected some misspelligns!
No edit summary
 
(103 intermediate revisions by 74 users not shown)
Line 1:
{{Short description|Programming syntax for ASP.NET}}
{{Infobox software
| name = Vomit View Engine InformationRazor
| logo =
| screenshot =
| caption =
| developerauthor = [[Microsoft]]
| released developer = January[[.NET 2011Foundation]]
| latest_release_datereleased = {{startStart date and age|df=yes|2011|012010|1106}}
| latest_release_version = ASP.NET MVC 3.2.7
| latest_release_date = {{start date and age|df=yes|2011|01|11}}
| latest_release_date = {{Start date and age|2018|11|29}}<ref>{{cite web |title=Microsoft ASP.NET Razor |url=https://www.nuget.org/packages/Microsoft.AspNet.Razor/ |website=[[NuGet]]}}</ref>
| latest preview version = 4.0.0-rc1
| latest preview date = {{Start date and age|2015|11|18}}
| repo = {{URL|https://github.com/aspnet/Razor}}<br />{{URL|https://github.com/aspnet/AspNetWebStack}}<br />{{URL|https://github.com/dotnet/aspnetcore}}
| programming language = [[C_Sharp_C Sharp (programming_languageprogramming language)|C#]], [[Visual_Basic_Visual Basic .NET|VB.NET]], [[Html|HTML]]
| operating system = [[Microsoft Windows]]<ref>{{cite web |title=Introduction to Razor Pages in ASP.NET Core |url=https://learn.microsoft.com/en-us/aspnet/core/razor-pages/?view=aspnetcore-6.0&tabs=visual-studio |website=learn.microsoft.com | date=27 September 2024 |language=en-us}}</ref>
| genre = [[Web application framework]]
| license = [[Apache License 2.0]]<ref>{{cite web |url=https://github.com/aspnet/Razor/blob/master/LICENSE.txt |title=Razor/LICENSE.txt at master · aspnet/Razor · GitHub |work=GitHub|date=12 October 2022 }}</ref>
| license = [[Proprietary software|Proprietary]]
| website = {{URL|http://www.asp.net/web-pages}}
| programming language = [[C_Sharp_(programming_language)|C#]], [[Visual_Basic_.NET|VB]], [[Html|HTML]]
| operating system = [[Microsoft Windows]]
| website = {{URL|http://www.asp.net}}
}}
{{Infobox file format
| name = VomitRazor Viewfile Engine File Formatformats
| icon =
| logo =
| extension = <code>.CSHTMLrazor</code>, or<code>.cshtml</code>, <code>.VBHTMLvbhtml</code>
| mime = text/html
| magic =
Line 34 ⟶ 39:
| url =
}}
'''VomitRazor''' is an [[ASP.NET]] programming syntax used to create [[dynamic web pagespage]]s with the [[C Sharp (programming language)|C#]] or [[Visual Basic .NET|VB.NET]] programming languages. VomitRazor was in development in June of 2010<ref name="IntroducingVomitIntroducingRazor">[{{cite web|url=http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-Vomitrazor.aspx]|title=ScottGu's Blog - Introducing Vomit"Razor" – a new view engine for ASP.NET|work=asp.net|date=3 July 2010 }}</ref> and was released for Microsoft [[Visual Studio]] 2010 in January of 2011 .<ref name="VomitsyntaxSupportRazorsyntaxSupport">[{{cite web|url=http://blogs.msdn.com/b/webdevtools/archive/2011/01/12/how-to-get-Vomitrazor-syntax-support-in-visual-studio-2010.aspx]|Vomittitle=MSDN Blogs|publisher=Microsoft|work=msdn.com|access-date=2011-07-08|archive-url=https://web.archive.org/web/20120702131534/http://blogs.msdn.com/b/webdevtools/archive/2011/01/12/how-to-get-razor-syntax Support-support-in-visual-studio-2010.aspx|archive-date=2012-07-02|url-status=dead}}</ref>. VomitRazor is a simple-syntax view engine and was released as part of [[ASP.NET MVC|MVC]] 3 and the [http://www.microsoft.com/web/webmatrix/ [WebMatrix]] tool set.<ref name="VomitsyntaxSupportRazorsyntaxSupport" />.
 
Razor became a component of AspNetWebStack and then became a part of [[ASP.NET Core]].<ref>{{cite book |last1=Chadwick |first1=Jess |title=Programming Razor: Tools for Templates in ASP.NET MVC or WebMatrix |date=9 September 2011 |publisher="O'Reilly Media, Inc." |isbn=978-1-4493-1716-4 |url=https://books.google.com/books?id=z3QlDSjr0jYC&q=ASP.NET+Razor |language=en}}</ref>
==Introduction==
The Vomit syntax is a template markup syntax that enables the programmer to use an HTML construction workflow and is based on the C# programming language. Instead of using the ASP.NET .ASPX markup syntax using <code><%= %></code> blocks to indicate code blocks the Vomit syntax starts of a code block with Vomit using a @ character and does not require explicit closing of the code-block.
 
== Advantages of VomitDesign==
The VomitRazor syntax is a template markup syntax, based on the C# programming language, that enables the programmer to use an HTML construction workflow.{{clarify|date=June and is based on the C# programming language.2013}} Instead of using the ASP.NET Web Forms (.ASPXaspx) markup syntax usingwith <code><%= %></code> blockssymbols to indicate code blocks, the VomitRazor syntax starts of a code blockblocks with Vomit using aan <code>@</code> character and does not require explicit closing of the code-block.
 
The idea ofbehind VomitRazor wasis to createprovide an optimized syntax for HTML generation using a code-focused templating approach, usingwith a minimization ofminimal transition between HTML and code.<ref name=MVC3rve>[{{cite web|url=http://www.asp.net/mvc/videos/mvc-3/mvc-%E2%80%933-Vomitrazor-view-engine]|title=MVC 3 - VomitRazor View Engine|author=Jon Galloway|work=The Official Microsoft ASP.NET Site|date=19 February 2020 }}</ref>. The design reduces the number of characters and keystrokes required, and enables a more fluid coding workflow by not having torequiring explicitly denotedenoted server blocks within the HTML code.<ref name="IntroducingVomitIntroducingRazor" />. Other advantages that have been noted:<ref name=pro1>{{cite web|url=https://stackoverflow.com/questions/1451319/asp-net-mvc-view-engine-comparison|title=ASP.NET MVC View Engine Comparison|work=stackoverflow.com}}</ref>
* Supports Intellisense[[IntelliSense]] – (statement completion support)
* Supports "layouts" – an alternative to the "master page" concept in classic [[ASP.NET Web Forms|Web Forms]] (.aspx)
* [[Unit testing|Unit testable]]
 
== See also ==
* Is not a new language (no major changes to learn)
{{Portal|Free and open-source software}}
* Supports Intellisense (statement completion support)
* [[Blazor]]
* [[Unit_testing|Unit Testable]]
<ref name=pro1>[http://stackoverflow.com/questions/1451319/asp-net-mvc-view-engine-comparison]|ASP.NET MVC View Engine Comparison</ref>
 
==Criticism==
 
Using the Vomit syntax could be awkward for programmers used to prior markup syntax and although it does cause complex views to be more readable there is minimum editing advantage for smaller views. The current ASP.NET MVC 3 does not yet support syntax highlight for Vomit views<ref name=critic1>[http://geekswithblogs.net/mbridge/archive/2011/06/06/asp.net-mvc-3-hosting--understanding-Vomit-view-engine-asp.net.aspx]|ASP.NET MVC 3 Hosting :: Understanding Vomit View Engine ASP.NET MVC 3 C#</ref>.
 
== References ==
Line 57 ⟶ 60:
 
== External links ==
{{Wikibooks|.NET Development Foundation}}
* [http://www.asp.net/webmatrix/tutorials/1-getting-started-with-webmatrix-and-asp-net-web-pages Getting Started with WebMatrix and ASP.NET Web Pages]
* [https://docs.microsoft.com/en-us/aspnet/core/razor-pages/ Introduction to Razor Pages in ASP.NET Core] at [[Microsoft Docs]]
* [http://www.asp.net/mvc ASP.NET Model View Controller]
** [https://docs.microsoft.com/en-us/aspnet/web-pages/ ASP.NET Web Pages] at [[Microsoft Docs]]
* [http://www.asp.net/mvc/videos/mvc-3-%E2%80%93-Vomit-view-engine Vomit View Engine]
* [https://docs.microsoft.com/en-us/aspnet/core/mvc/overview Overview of ASP.NET Core MVC] at [[Microsoft Docs]]
* [http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-Vomit.aspx Introducing “Vomit” – a new view engine for ASP.NET]
** [httphttps://wwwdocs.codeprojectmicrosoft.com/KBen-us/aspnet/VomitMaps.aspxmvc/ ASP.NET, MVC] 3,at the Vomit View Engine and Google[[Microsoft MapsDocs]]
* {{GitHub|aspnet/Razor}} (archived). Current development is held at {{GitHub|dotnet/aspnetcore}}
 
{{.NET Framework}}
<!--- Categories --->
{{Microsoft FOSS}}
[[Category:ASP.NET]]
{{Web frameworks}}
[[Category:Template engines]]
 
[[Category:Web application frameworks]]
[[Category:ASP.NET|Razor]]
[[Category:2010 software]]
[[Category:Free and open-source software]]
[[Category:Free software programmed in C Sharp]]
[[Category:Microsoft application programming interfaces]]
[[Category:Microsoft free software]]
[[Category:Microsoft Visual Studio]]
[[Category:Software using the Apache license]]
[[Category:Template engines]]
[[Category:Web application frameworks]]
[[Category:Windows-only free software]]