Mvc

  • Upload
    abhigad

  • View
    1.087

  • Download
    1

Embed Size (px)

Citation preview

Introducing a New Product

MVC for ASP.NET Developers

Abhijit GadkariEnterprise Architect

http://www.technolatte.net/image.axd?picture=2009%2F3%2Frequest.jpg

Yet Other WebFramework!

Million $ Question?

Who here is attending this talk because you are concerned thatASP.NET MVC is going to throw out all of your existing knowledgeon Web Forms and require you to learn new technology?

From Chapter 2 of the Professional ASP.NET MVC

Please Note:

Release of ASP.NET MVC does not mean the death of Web Forms. This just isn't true.ASP.NET MVC is not ASP.NET Web Forms 4.0.It's an alternative to Web Forms, and it's a fully supported part of the [.NET] framework.

Professional ASP.NET MVC 1.0 by Scott Guthrie et al. [page 171]

Lets call our dear friend...

http://www.microsoft.com/downloads/details.aspx?FamilyID=53289097-73ce-43bf-b6a6-35e00103cb4b&displaylang=en

www.asp.net/mvc

Model View Controller (MVC) is one of the most quoted (and most misquoted) pattern around. It started as a framework developed By Trygve Reenskaug for the Smalltalk platform in the late 1970s. Since then it has played an influential role in most UI frameworks and the thinking about UI design.- from Patterns of Enterprise Application Architecture by Martin Fowler et.al. Page 330

ViewModelController

Splits user interface interaction into three distinct roles.

MVC is a framework methodology that divides an application's

implementation into three component roles: models, views, and controllers.

"Models" in a MVC based application are the components of the application that are responsible for maintaining state. Often this state is persisted inside a database (for example: we might have a Product class that is used to represent order data from the Products table inside SQL).

"Views" in a MVC based application are the components responsible for displaying the application's user interface. Typically this UI is created off of the model data (for example: we might create an Product "Edit" view that surfaces textboxes, dropdowns and checkboxes based on the current state of a Product object).

"Controllers" in a MVC based application are the components responsible for handling end user interaction, manipulating the model, and ultimately choosing a view to render to display UI. In a MVC application the view is only about displaying information - it is the controller that handles and responds to user input and interaction.

What is a Model View Controller (MVC) Framework?

http://weblogs.asp.net/scottgu/archive/2007/11/13/asp-net-mvc-framework-part-1.aspx

One of the benefits of using a MVC methodology is that it helps enforce a clean separation of concerns between the models, views and controllers within an application.

Maintaining a clean separation of concerns makesthe testing of applications much easier, since the contract between different application components are more clearly defined and articulated.

Slide 4 and 5 from http://weblogs.asp.net/scottgu/archive/2007/10/14/asp-net-mvc-framework.aspx

My First MVCApplication...

MVC is built on top of ASP.NET

3Controllers4Models5.Scripts2Views1Default.aspx

Convention over Configuration!

MVC with realModel...

Summary

MVC framework is not an alternative to the existing web form Technology. Use Web Forms on projects where you use third party server controls, web parts and dynamic data

Going forward MS will support MVC as well as Web Forms

MVC can be added to the existing ASP.NET web form application

ASP.NET MVCASP.NET Web Forms

No Server Controls Based on the standard server control model

No Postbacks and ViewState View will talk to the controller Postbacks and ViewState is an integral part of this framework

Controller is the glue that binds a view with the model Codebehind file is a glue that binds a view with the model

Doesn't hide HTML & HTTP Hides HTML and HTTP

Thanks for attending this presentation. Please let me know your feedback on [email protected]

We are planning on conductinga day long [9 -5] hands-onseminar on ASP.NET MVC in Orange County.

Let us know if you are interested...

[email protected]