What is Razor View Engine?


Razor is the first major update to render HTML in MVC3. Razor was designed specifically as a
view engine syntax. It has one main focus: code-focused templating for HTML generation.
Here’s how that same markup would be generated using Razor:

@model MvcMusicStore.Models.Genre
@{ViewBag.Title = "Browse Albums";}
<div class="genre">
<h3><em>@Model.Name</em> Albums</h3>
<ul id="album-list">
@foreach (var album in Model.Albums)
{
<li>
<a href="@Url.Action("Details", new { id = album.AlbumId })">
<img alt="@album.Title" src="@album.AlbumArtUrl" />
<span>@album.Title</span>
</a>
</li>
}
</ul>
</div>

The Razor syntax is easier to type, and easier to read. Razor doesn’t have the XML-like heavy
syntax.