Chapter 1 Fundamentals of MVC
Microsoft‘s Web Development Platforms
Understanding the past can be a big help in appreciating the present.
1.ASP
asked for features such as improved code reuse,better separation of concerns,and easier application of object-oriented programming principles.
2. ASP.NET Web Forms
an abstraction from the underlying HTML,Js,and Css
3.ASP.NET MVC
The Architecture encourages strict isolation between the individual parts of application.
Benefits:
Development:Isolated componensts;
Testability;
Maintenance.
The MVC Architecture
The model repesents core business logic and data.
The view is responsible for transforming a model or models into a visual representation.
The Controller is the coordinator between the view and the model.
The new in asp.net mvc 4
Async Controllers:just like node.js?
Display modes:different devices.
Bundling and minification:script and css combining and minification.
Web API:supply data to the different platform.
Convention over Config
Action Results
Content() :string
File():file e.g.,a pdf
HttpNotFound() :404
Javascript():js
Json()
PartialView() :without layout
Redirect():302
RedirectPermanent
View()
Action Filters
create own filters by extending the ActionFilterAttribute
Views
Code nuggets
rendered inline. like this: @Html.ActionLink("Login", "Login")
Code blocks
like this:@{}
Layouts
layouts like this:
content like this:
Partial Views
Displaying Data
It is the controller’s job to be the “traffic cop,” coordinating various parts of the system to execute the application’s logic.
ViewData ,
TempData,
ViewBag(dynamic)
View model(Strongly typed).
HTML and URL Helpers
HtmlHelper :helps you generate HTML markup
UrlHelper :helps you generate URLs.
Models
Putting It All Together
As a recap, every ASP.NET MVC request requires at least three things: a route, a controller action, and a view (and, optionally, a model).
The Route
The Summary
ASP.NET MVC leverages the time-tested Model-View-Controller architecture pattern to provide a website development framework that encourages loosely coupled architecture and many other popular object-oriented programming patterns and practices.