SlideShare una empresa de Scribd logo
1 de 18
Introduction to ASP.NET MVC
LOHITH G. N.
DEV EVANGELIST, TELERIK
LOHITH.NAGARAJ@TELERIK.COM
Session 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?
Takeaways
ASP.NET Then…
Caching Modules
HandlersIntrinsics
Pages Controls
Globalization
Profile
Master Pages
MembershipRoles
Etc.
ASP.NET
One web application
framework to rule them all…
ASP.NET Now…
ASP.NET
Dynamic Data
ASP.NET
WebForms
ASP.NET
MVC
Presentation
Runtime
ASP.NET
Core
WebForms is
great, but options
are good…
Master Page
Control
Control
No real role responsibility…
UI
Presentation Logic
Business Logic
Data Access
Who does what?
How and when?
Control
ControlPage
Control
Control
Control
Control
Control abstractions can be
negative…
It isn't easy enough to test…
Logic UI
So how does
ASP.NET MVC
differ?
MVC = Model-View-
Controller
Controller
(Input)
Model
(Logic)
View
(Presentation)
Separation of concerns!
How does MVC look?
Request
View
Controller
Response
Controller
Handles input
(HTTP requests)
View
Visually represents
the model
File | New
What are the
tenets of ASP.NET
MVC?
Framework Goals
 Frictionless Testability
 Tight control over <markup>
 Leverage the benefits of ASP.NET
 Conventions and guidance
 …
Clean URLs
Don’t settle for…
/Products.aspx?CategoryID=123
When you can easily have…
/Product/Puppies
Or whatever else makes sense…
Extensibility
Controller
Builder
Controller
Factory
Controller
View
Engine
View
Controller
Action
Invoker
Action
Result
Action
Filters
Model
Binders
Any of this can be replaced!
MVC Development
Summary
• 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

Más contenido relacionado

La actualidad más candente

AngularJS UTOSC
AngularJS UTOSCAngularJS UTOSC
AngularJS UTOSC
roboncode
 
Combining HTML5 with MVC framework to simplify realtime collaboration for we...
Combining HTML5 with MVC framework to simplify  realtime collaboration for we...Combining HTML5 with MVC framework to simplify  realtime collaboration for we...
Combining HTML5 with MVC framework to simplify realtime collaboration for we...
Gopikrishnan Sasikumar
 

La actualidad más candente (20)

Single Page Application presentation
Single Page Application presentationSingle Page Application presentation
Single Page Application presentation
 
Getting Started with J2EE, A Roadmap
Getting Started with J2EE, A RoadmapGetting Started with J2EE, A Roadmap
Getting Started with J2EE, A Roadmap
 
Single Page Applications
Single Page ApplicationsSingle Page Applications
Single Page Applications
 
Jquery
JqueryJquery
Jquery
 
ASP .NET MVC - best practices
ASP .NET MVC - best practicesASP .NET MVC - best practices
ASP .NET MVC - best practices
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
 
learn mvc project in 7 day
learn mvc project in 7 daylearn mvc project in 7 day
learn mvc project in 7 day
 
Mvc Training
Mvc TrainingMvc Training
Mvc Training
 
AngularJS UTOSC
AngularJS UTOSCAngularJS UTOSC
AngularJS UTOSC
 
M&M - MeanMilan @CodeMotionMilan
M&M - MeanMilan @CodeMotionMilanM&M - MeanMilan @CodeMotionMilan
M&M - MeanMilan @CodeMotionMilan
 
Building great spa’s with angular js, asp.net mvc and webapi
Building great spa’s with angular js, asp.net mvc and webapiBuilding great spa’s with angular js, asp.net mvc and webapi
Building great spa’s with angular js, asp.net mvc and webapi
 
Asp.net Overview and Controllers
Asp.net Overview and ControllersAsp.net Overview and Controllers
Asp.net Overview and Controllers
 
End to-End SPA Development Using ASP.NET and AngularJS
End to-End SPA Development Using ASP.NET and AngularJSEnd to-End SPA Development Using ASP.NET and AngularJS
End to-End SPA Development Using ASP.NET and AngularJS
 
Web technologies practical guide
Web technologies practical guideWeb technologies practical guide
Web technologies practical guide
 
Model View Madness
Model View MadnessModel View Madness
Model View Madness
 
Asp netmvc
Asp netmvcAsp netmvc
Asp netmvc
 
Angle Forward with TypeScript
Angle Forward with TypeScriptAngle Forward with TypeScript
Angle Forward with TypeScript
 
Reactive Guide for Spring MVC - Rossen Stoyanchev
Reactive Guide for Spring MVC - Rossen StoyanchevReactive Guide for Spring MVC - Rossen Stoyanchev
Reactive Guide for Spring MVC - Rossen Stoyanchev
 
Introduce MVVM & How to implement it in your iOS app
Introduce MVVM & How to implement it in your iOS appIntroduce MVVM & How to implement it in your iOS app
Introduce MVVM & How to implement it in your iOS app
 
Combining HTML5 with MVC framework to simplify realtime collaboration for we...
Combining HTML5 with MVC framework to simplify  realtime collaboration for we...Combining HTML5 with MVC framework to simplify  realtime collaboration for we...
Combining HTML5 with MVC framework to simplify realtime collaboration for we...
 

Destacado (7)

Overview of razor syntax
Overview of razor syntaxOverview of razor syntax
Overview of razor syntax
 
Asp.net web forms new shiny things part 1
Asp.net web forms new shiny things   part 1Asp.net web forms new shiny things   part 1
Asp.net web forms new shiny things part 1
 
Testing Mobile Applications With Telerik Platform
Testing Mobile Applications With Telerik PlatformTesting Mobile Applications With Telerik Platform
Testing Mobile Applications With Telerik Platform
 
Solving Enteprise Mobility Considerations with Telerik Mobile Platform
Solving Enteprise Mobility Considerations with Telerik Mobile PlatformSolving Enteprise Mobility Considerations with Telerik Mobile Platform
Solving Enteprise Mobility Considerations with Telerik Mobile Platform
 
Build Hybrid Mobile Applications for Nokia Lumia Devices
Build Hybrid Mobile Applications for Nokia Lumia DevicesBuild Hybrid Mobile Applications for Nokia Lumia Devices
Build Hybrid Mobile Applications for Nokia Lumia Devices
 
Build Leaner, Faster Web Applications with ASP.NET
Build Leaner, Faster Web Applications with  ASP.NETBuild Leaner, Faster Web Applications with  ASP.NET
Build Leaner, Faster Web Applications with ASP.NET
 
Lap Around ASP.NET MVC 5
Lap Around ASP.NET MVC 5Lap Around ASP.NET MVC 5
Lap Around ASP.NET MVC 5
 

Similar a Introduction to asp.net mvc

Mvc presentation
Mvc presentationMvc presentation
Mvc presentation
MaslowB
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
Khaled Musaied
 

Similar a Introduction to asp.net mvc (20)

ASP.NET MVC for Begineers
ASP.NET MVC for BegineersASP.NET MVC for Begineers
ASP.NET MVC for Begineers
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC Presentation
 
Asp.netmvc handson
Asp.netmvc handsonAsp.netmvc handson
Asp.netmvc handson
 
ASP.NET MVC 3
ASP.NET MVC 3ASP.NET MVC 3
ASP.NET MVC 3
 
Difference between asp.net web forms and asp.net mvc
Difference between asp.net web forms and asp.net mvcDifference between asp.net web forms and asp.net mvc
Difference between asp.net web forms and asp.net mvc
 
MSDN - ASP.NET MVC
MSDN - ASP.NET MVCMSDN - ASP.NET MVC
MSDN - ASP.NET MVC
 
Asp.net mvc
Asp.net mvcAsp.net mvc
Asp.net mvc
 
Aspnet mvc
Aspnet mvcAspnet mvc
Aspnet mvc
 
Mvc framework
Mvc frameworkMvc framework
Mvc framework
 
MV(C, mvvm) in iOS and ReactiveCocoa
MV(C, mvvm) in iOS and ReactiveCocoaMV(C, mvvm) in iOS and ReactiveCocoa
MV(C, mvvm) in iOS and ReactiveCocoa
 
Which is better asp.net mvc vs asp.net
Which is better  asp.net mvc vs asp.netWhich is better  asp.net mvc vs asp.net
Which is better asp.net mvc vs asp.net
 
Modern ASP.NET Webskills
Modern ASP.NET WebskillsModern ASP.NET Webskills
Modern ASP.NET Webskills
 
ASP.NET Web Forms Vs. ASP.NET MVC
ASP.NET Web Forms Vs. ASP.NET MVCASP.NET Web Forms Vs. ASP.NET MVC
ASP.NET Web Forms Vs. ASP.NET MVC
 
MVC Architecture in ASP.Net By Nyros Developer
MVC Architecture in ASP.Net By Nyros DeveloperMVC Architecture in ASP.Net By Nyros Developer
MVC Architecture in ASP.Net By Nyros Developer
 
Entities, the theory
Entities, the theoryEntities, the theory
Entities, the theory
 
Mvc presentation
Mvc presentationMvc presentation
Mvc presentation
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
 
ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)
 
Technoligent providing custom ASP.NET MVC development services
Technoligent providing custom ASP.NET MVC development servicesTechnoligent providing custom ASP.NET MVC development services
Technoligent providing custom ASP.NET MVC development services
 
Web Development Today
Web Development TodayWeb Development Today
Web Development Today
 

Más de Lohith Goudagere Nagaraj

Más de Lohith Goudagere Nagaraj (20)

Porting Hybrid Apps to Native Apps
Porting Hybrid Apps to Native AppsPorting Hybrid Apps to Native Apps
Porting Hybrid Apps to Native Apps
 
Hybrid Mobile App Development With Cordova
Hybrid Mobile App Development With CordovaHybrid Mobile App Development With Cordova
Hybrid Mobile App Development With Cordova
 
Building Web Apps & APIs With Node JS
Building Web Apps & APIs With Node JSBuilding Web Apps & APIs With Node JS
Building Web Apps & APIs With Node JS
 
Even Quicker Development with Xamarin Forms Using Telerik UI for Xamarin
Even Quicker Development with Xamarin Forms Using Telerik UI for XamarinEven Quicker Development with Xamarin Forms Using Telerik UI for Xamarin
Even Quicker Development with Xamarin Forms Using Telerik UI for Xamarin
 
You Know Angular 2, You Know Native Mobile App Development
You Know Angular 2, You Know Native Mobile App DevelopmentYou Know Angular 2, You Know Native Mobile App Development
You Know Angular 2, You Know Native Mobile App Development
 
Connecting your .Net Applications to NoSQL Databases - MongoDB & Cassandra
Connecting your .Net Applications to NoSQL Databases - MongoDB & CassandraConnecting your .Net Applications to NoSQL Databases - MongoDB & Cassandra
Connecting your .Net Applications to NoSQL Databases - MongoDB & Cassandra
 
Angular JS 2.0 & React with Kendo UI
Angular JS 2.0 & React with Kendo UIAngular JS 2.0 & React with Kendo UI
Angular JS 2.0 & React with Kendo UI
 
Kendo UI Wrappers in ASP.NET Core
Kendo UI Wrappers in ASP.NET CoreKendo UI Wrappers in ASP.NET Core
Kendo UI Wrappers in ASP.NET Core
 
Seamless Access to Data from BI Tools using DataDirect Cloud
Seamless Access to Data from BI Tools using DataDirect CloudSeamless Access to Data from BI Tools using DataDirect Cloud
Seamless Access to Data from BI Tools using DataDirect Cloud
 
The Bleeding Edge - Whats New in Angular 2
The Bleeding Edge - Whats New in Angular 2The Bleeding Edge - Whats New in Angular 2
The Bleeding Edge - Whats New in Angular 2
 
Introduction to UWP - Universal Windows Platform Application Development
Introduction to UWP - Universal Windows Platform Application DevelopmentIntroduction to UWP - Universal Windows Platform Application Development
Introduction to UWP - Universal Windows Platform Application Development
 
Cross Platform Web Applications Using ASP.NET Core 1.0
Cross Platform Web Applications Using ASP.NET Core 1.0Cross Platform Web Applications Using ASP.NET Core 1.0
Cross Platform Web Applications Using ASP.NET Core 1.0
 
JavaScript Task Runners - Gulp & Grunt
JavaScript Task Runners - Gulp & GruntJavaScript Task Runners - Gulp & Grunt
JavaScript Task Runners - Gulp & Grunt
 
Visual Studio 2015 - Whats New ?
Visual Studio 2015 - Whats New ?Visual Studio 2015 - Whats New ?
Visual Studio 2015 - Whats New ?
 
Introduction to React JS
Introduction to React JSIntroduction to React JS
Introduction to React JS
 
Online Spreadsheet for your Web Applications using Kendo UI
Online Spreadsheet for your Web Applications using Kendo UIOnline Spreadsheet for your Web Applications using Kendo UI
Online Spreadsheet for your Web Applications using Kendo UI
 
NativeScript + Push Notifications
NativeScript + Push NotificationsNativeScript + Push Notifications
NativeScript + Push Notifications
 
10 Useful New Features of ECMA Script 6
10 Useful New Features of ECMA Script 610 Useful New Features of ECMA Script 6
10 Useful New Features of ECMA Script 6
 
New Enterprisre Capabilities in Telerik Platform
New Enterprisre Capabilities in Telerik PlatformNew Enterprisre Capabilities in Telerik Platform
New Enterprisre Capabilities in Telerik Platform
 
Creating Custom HTML Helpers in ASP.NET MVC
Creating Custom HTML Helpers in ASP.NET MVCCreating Custom HTML Helpers in ASP.NET MVC
Creating Custom HTML Helpers in ASP.NET MVC
 

Último

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Introduction to asp.net mvc

Notas del editor

  1. Estimated Time: 1 minuteThe main objectives of this session are to explain what ASP.NET MVC is and how it sits in the overall ASP.NET ecosystem. We’ll take a look at its main value propositions and see what style of development it enables.The key takeaways are to determine whether or not ASP.NET MVC is the right choice for you as a developer, and to figure out whether or not it can ease some pain you’re currently experiencing as a web developer on the .NET stack.
  2. Estimated Time: 2 minutesFor the entire life of ASP.NET it has been seen as a single framework that included both runtime and presentational aspects. This includes core features such as roles and globalization, as well as WebForms features such as master pages and user controls.
  3. Estimated Time: 2 minutesWith the release of .NET Framework 3.5 SP1, ASP.NET started being seen as more modular. ASP.NET Core now represents just the runtime aspects of ASP.NET, and ASP.NET WebForms is simply a presentation option that sits on top of that runtime. With this, it becomes possible to introduce other presentation layer implementations on top of ASP.NET, such as the new ASP.NET MVC framework.While many who are beginning to investigate into ASP.NET MVC think that it is the replacement for WebForms, as you can see, it is simply another option for developing web applications using the ASP.NET runtime.
  4. Estimated Time: 1 minuteWebForms has been the only option on the ASP.NET stack and provides a mature product that has proven successful for lots of developers. But it does have some weaknesses.
  5. Estimated Time: 2 minutesThe level of abstraction that WebForms provides has a lot of benefits to it, but it doesn’t provide any framework-level guidance in terms of what should do what and when. Between your pages, master pages, user controls, server controls, and custom controls, you can end up with a mixture of HTML, data access code, and business logic.There are certainly methodologies/practices that can be employed with WebForms that can remedy that, but it becomes an implementation task of the developer, since the framework doesn’t provide any of that separation/guidance.
  6. Estimated Time: 2 minutesThe control abstractions that WebForms provides are very powerful in that they neatly contain all of the UI and business logic needed so you can just place them within a page and go. The adverse side of that is that it can end up hiding complexity that you’d rather have control over. A common problem is viewstate[Advance Animation]. It isn’t viewstate’s fault that things like this can happen, but it can be very easy to consume a control that could end up hurting the performance of your application.In addition, many times the markup rendered by server controls aren’t always ideal and there is little control over that without having to redo its rendering completely.
  7. Estimated Time: 1 minuteIt is possible to test a WebForms application, but it isn’t easy enough. There isn’t enough prescriptive guidance around how to do it properly, and for many it requires more effort than it is worth. For unit testing to truly become mainstream and approachable, testability has to be a prime concern of the framework being used, such that writing tests against applications written with it is easy.
  8. Estimated Time: 1 minuteWhat is it about ASP.NET MVC that differentiates itself from WebForms? What value propositions does it provide and how does it benefit users? The primary thing is that it embraces the MVC pattern at the architectural level, and is generally just about getting out of the way of the developer, allowing you to have full control over the areas you want/need to.
  9. Estimated Time: 2 minutesMVC is a design pattern that stands for Model-View-Controller. What is strives to do is separate the concerns of an application’s presentation layer by assigning specific roles to the three different components.The Controller is responsible for handling all user input. Once input has been received, the Controller will perform any operations/actions it needs to, which might include interacting with the Model.The Model represents the core concern/logic of the application. Once the Controller retrieves some model data and performs any work with the model/etc it needs to it constructs a presentation model that describes the model in terms the View can understand.The View is the visual representation of the model. It presents the model data to the actual user in a way that is meaningful. In a web application, this would typically be HTML.With these three pieces in place, your presentation layer becomes cleanly separated in such a way that each component can be developed/tested independently.
  10. Estimated Time: &lt; 1 minuteSo now that we’ve seen a simple example of how ASP.NET MVC looks, what are the primary tenets that it represents?
  11. Estimated Time: 1 minuteIn summary, ASP.NET MVC is simply a new web application type that is built on top of the ASP.NET runtime. It is not replacing WebForms but is simply a new option. It you care a lot about testability and control then ASP.NET MVC is most likely for you.