Views are the UI layer of the MVC application.
They are not responsible for any logic
Views are placed inside the Views folder of the ASP.NET MVC application
There is a folder for each controller inside the Views folder
Razor views have .cshtml, .vbhtml while web forms have .aspx, .asp extensions.
ASP.NET MVC View Engines
View Engines are responsible for rendering the HTML from your views to the browser. The view engine template will have
different syntax for implementation. Currently there are few number of view engines available for MVC and the top four
view engines are Razor, traditional ASPX, Spark and Nhaml.
Razor is the best view engine. Uses @ for rendering HTML
Web forms engine uses <%%>
See the other view engines doc at
Binding Models to Views
The controller is responsible for binding the model data to the view.
@model is used to bind the model to a view.
Views that are bound to models are called strongly typed views.
Passing Data from Controller to Views
Data can be passed from controllers to views using three different ways
They are similar to user controls in asp.net web forms.
Html.RenderPartial and @Html.Partial are used to include
The partial views inside a view.
HTTP Post and GET Action selectors
HttpGet and HttpPost are used for actions that read and submit data from views to controllers
For example adding data in a view then submitting them back to the controller action.
Localization in ASP.NET MVC is similar to ASP.NET web forms.
Tips for implementing localization in an asp.net MVC application
Use Resource files (.resx)
Place resource files in a folder out of the global resource folders of the ASP.NET
Chance the access modifier of the resource to public
Avoid writing hard coded texts.
Use ErrorMessageResourceType, ResourceType data annotations in the fields of the model
Design different stylessheets for the different languages
Switch between languages in the global.asax file
Bundling is a new feature in ASP.NET 4.5 that makes it easy to combine or bundle multiple files into a single file. You
You can add your bundles in the BundleConfig class.
Bundling is disabled in the Debug mode so to enable bundling you must set the Debug=“False” in the web.config
Minification performs a variety of different code optimizations to scripts or css, such as removing unnecessary white space