Understanding ASP.NET MVC
-
Upload
shravan-kumar-kasagoni -
Category
Technology
-
view
3.950 -
download
0
description
Transcript of Understanding ASP.NET MVC
Understanding ASP.NET MVC
Shravan Kumar
Thomson Reuters
Walk Away Knowing
Introduction to ASP.NET MVC
Digging into ASP.NET MVC
What’s new in ASP.NET MVC3?
What is ASP.NET?
Caching Modules
HandlersIntrinsics
Pages Controls
Globalization
Profile
Master Pages
MembershipRoles
Etc...
ASP.NET
One web applicationframework to rule them all…
ASP.NET CORE Runtime
ASP.NET WebForms Presentation
WebForms is great, But it does have some weaknesses
No real role responsibility…
Who does what?How and when?
Master Page
Control
Control
UIPresentation LogicBusiness LogicData Access
Control
ControlPage
Control
Control
Control
Control
Control abstractions can be negative…
Logic UI
It isn’t easy enough to test
How does ASP.NET MVC Differ?
A new Web Application Project type
Not a replacement for WebForms -Builds on top of ASP.NET
Simply an another option
Presentation
ASP.NET CORE Runtime
Now ASP.NET
ASP.NET WebFor
ms
ASP.NETMVC
What is MVC?
A design pattern
Separation of concerns
Acronym for Model ● View ● Controller
MVCModel
ControllerView
What is MVC?
Step 1Incoming request routed to Controller
Request
Controller
What is MVC?
Step 2Controller processes request and creates presentation
Model
Controller
Model
What is MVC?
Step 3Model is passed to View
Controller
View
What is MVC?
Step 4View transforms Model into appropriate output format
Controller
View
What is MVC?
Step 5Response is rendered
Response
Controller
View
THE FUN STUFFShow Me Some Code!
Framework Goals
Frictionless Testability Tight control over <markup/>
User/SEO friendly URLs
Leverage the benefits of ASP.NET
Conventions and Guidance
Separation of Concerns
Each component has one responsibilitySRP – Single Responsibility PrincipleDRY – Don’t Repeat Yourself
More easily testable (TDD)
Helps with concurrent development
Clean URLs
REST-like
/products/update
/blog/posts/2008/08/12/mvc-is-cool
Friendlier to humans
/product.aspx?categoryid=123 to become
Becomes /products/kittens/
Friendlier to web crawlers
Search engine optimization (SEO)
Extensible
Replace any component of the system Interface-based architectureVery few sealed methods / classes
Plays well with others
DEMO – ASP.NET MVC
What’s New in ASP.NET MVC3?
What’s new in ASP.NET MVC 3?
Razor View Engine
Multple View Engine Support
Validation Improvement
s
Dynamic View and
ViewModel Properties
Global Action Filters
Support for Permanent Redirects
New Project Dialog
Improvements
VBHTML Support
Tasked based helpers
Improved Dependency
Injection
Porting MVC Script
Libraries to jQuery
Granular ValidateInput
Add View Dialog
Improvements
New Project Dialog
Extensibility Improvement
s
Improved Caching Support
Remote Validator
It’s Question Time!