Introduction To Asp.Net Mvc

Preview:

DESCRIPTION

Introduction To Asp.Net Mvc

Citation preview

Introduction to ASP.NET MVCIntroduction to ASP.NET MVC

Name Ravi PahujaOrganization Espire Info LabsEmail ravi.pahuja@gmail.com

Session ObjectivesSession Objectives

• What is ASP.NET MVC?• What is MVC?

• Is it deprecating WebForms?• What are its value propositions?

• Is ASP.NET MVC right for you?• Can it ease some web development pain you’re currently having?TakeawaysTakeaways

ASP.NET Then…ASP.NET Then…

CachingCaching ModulesModules

HandlersHandlersIntrinsicsIntrinsics

PagesPages ControlsControls

GlobalizationGlobalization

ProfileProfile

Master PagesMaster Pages

MembershipMembershipRolesRoles

Etc.Etc.

ASP.NET

One web applicationframework to rule them all…

ASP.NET Now…ASP.NET Now…

ASP.NETDynamic Data

ASP.NETWebForms

ASP.NETMVC

Presentation

RuntimeASP.NET

Core

WebForms is great, but

options are good…

WebForms is great, but

options are good…

Master Page

Control

Control

No real role responsibility…No real role responsibility…

UIPresentation LogicBusiness LogicData Access

Who does what?How and when?

Control

ControlPage

Control

Control

Control

Control

Control abstractions can be negative…Control abstractions can be negative…

It isn't easy enough to test…It isn't easy enough to test…

Logic UI

So how does ASP.NET MVC

differ?

So how does ASP.NET MVC

differ?

MVC = Model-View-ControllerMVC = Model-View-Controller

ControllerController(Input)(Input)

ModelModel(Logic)(Logic)

ViewView(Presentation)(Presentation)

Separation of concerns!

How does MVC look?How does MVC look?

Request

View

Controller

Response

ControllerHandles input(HTTP requests)

ViewVisually representsthe model

ExtensibilityExtensibility

ControllerBuilder

ControllerFactory

Controller

ViewEngine

View

ControllerActionInvoker

ActionResult

ActionFilters

Model Binders

Any of this can be replaced!

SummarySummary

• ASP.NET MVC is a new application option built on top of ASP.NET

• WebForms isn’t being deprecated

• ASP.NET MVC strives to provide strong, frictionless testability

• It places a lot of the control in your hands