SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Introduction to
ASP.NET MVC
@SirwanAfifi
What is ASP.NET MVC?
Web Development Framework
The Most Up-to-date Ideas and Techniques from Agile
Development
The Best Part of ASP.NET Platform
It is a complete alternative to traditional ASP.NET Web Forms
Understanding the History of ASP.NET
.NET
A multi-language managed code platform
(brand new at the time – a landmark in its own right)
ASP.NET
A way to host .NET applications in IIS, letting you
interact
With HTTP requests and responses
ASP.NET Web Forms
A set of UI components (pages, buttons, etc.)
Pulse a stateful, object-oriented GUI
Programming model
• ASP.NET 1.0 was first released in 2002 (it was same thing with Webform)
• ASP.NET 2.0 was released in 2005 along with Visual Studio 2005
• ASP.NET MVC was announced in 2007
• ASP.NET 3.5 followed in 2008 and brought with it DynamicData, which enables you to
rapidly generate data-driven applications in minutes.
• ASP.NET 4 was released along with VS2010. At the same time ASP.NET MVC 4 was released
• ASP.NET 4.5 was released along with VS2012 in 2012. This release included ASP.NET MVC 4.5
• ASP.NET 4.5.1 was released along with VS2013. MVC 5.0
• ASP.NET 4.5.2 Update 1,2 VS 2013 (MVC 5.1)
ASP.NET Web Forms
What Is Wrong with ASP.NET Web Forms ?
Viewstate weight
Page life cycle
False sense of separation of concerns (SOC)
Limited control over HTML
Leaky abstraction
Low testability
MVC
MVC (cont.)
Model = HTML View= CSS Controller= Browser
ASP.NET MVC
ASP.NET MVC is a framework for building web applications that
applies the general Model
View Controller pattern to the ASP.NET framework
How ASP.NET MVC Fits in with ASP.NET?
• ASP.NET MVC 1 Overview : at the Austin ALT.NET conference in October 2007 in Redmond ScottGu
showed a group of developers “this cool thing I wrote on a plane”- codenamed (Scalene)
• including code and unit tests
• Was released in March 2009
• ASP.NET MVC 2 Overview : was released just one year later, in March 2010
• UI helpers with automatic scaffolding with customizable templates
• Attribute-based model validation on both client and server
• Strongly typed HTML helpers
• Improved Visual Studio tooling
• ASP.NET MVC 3 Overview : shipped just 10 months after MVC 2
• The Razor view engine
• Support for .NET 4 Data Annotations
• Improved model validation
• Better JavaScript support with unobtrusive JavaScript, jQuery Validation, and JSON binding
• Use of NuGet to deliver software and manage dependencies throughout the platform
• Razor View Engine
Razor is the first major update to rendering HTML since ASP.NET 1 shipped almost a decade ago.
The default view engine used in MVC 1 and 2 was commonly called the Web Forms view engine
syntax in a Web Forms page is shown here :
Razor was designed specifically as a view engine syntax. It has one main focus: code-focused templating
for HTML generation. Here’s how that same markup would be generated using Razor:
ASP.NET MVC 3.0 Features
The Razor syntax is easier to type, and easier to read. Razor doesn’t have the XML-like heavy syntax
of the Web Forms view engine.
• Compact, expressive, and fluid
• Not a new language : Razor is a syntax that lets you use your existing .NET coding skills in a
template in a very intuitive way.
• Easy to learn: Precisely because Razor is not a new language, it’s easy to learn. You know
HTML, you know .NET; just type HTML and hit the @ sign whenever you need to write
some .NET code.
• Good IntelliSense
ASP.NET MVC 3.0 Features (cont.)
• Validation Improvements
Validation is an important part of building web applications, but it’s never fun. MVC 3 extended the
validation support to cover most scenarios you’re likely to encounter.
• .NET 4 Data Annotation Support :
• Unobtrusive JavaScript using data- instead of something like onclick,…
• jQuery Validation
• JSON Binding : enabling your action methods to accept and model-bind data in JSON format.
• Dependency Resolution : MVC 3 introduced a new concept called a dependency resolver, which greatly
simplified the use of dependency injection in your applications.
ASP.NET MVC 3.0 Features (cont.)
• MVC 4 Overview
• ASP.NET Web API : ASP.NET MVC development style but is tailored to writing HTTP services
• Enhancements to default project templates
• Mobile project template using jQuery Mobile
• Display Modes
• Task support for Asynchronous Controllers
• Bundling and minification
ASP.NET MVC 4
• Enhancements to Default Project Templates
MVC 1.0 MVC 4.0
ASP.NET MVC 4 (cont.)
• Mobile Project Template Using jQuery Mobile
Responsive jQuery Mobile
ASP.NET MVC 4 (cont.)
• Display Modes
Display modes use a convention-based approach to allow selecting different views based on the
browser making the request.
The default view engine first looks for views with names ending with .Mobile.cshtml when the
browser’s user agent indicates a known mobile device.
ASP.NET MVC 4 (cont.)
• Bundling and Minification
This system reduces requests to your site by combining several individual script references into a single
request.
ASP.NET MVC 4 (cont.)
Open Source Release
• MVC 5 Overview
• One ASP.NET
• ASP.Net Identity
• Bootstrap 3.0 in the MVC template
• Authentication Filters
• Filter overrides
• Attribute routing (my Article here)
ASP.NET MVC 5
• Includes new cloud-optimized versions of MVC, Web API, Web Pages, SignalR, and
Entity Framework.
• MVC, Web API, and Web Pages will be merged into one framework, called MVC 6
• MVC 6 has no dependency on System.Web
• vNext uses the Rosyln compiler to compile code dynamically
• vNext is open source and cross platform
• vNext is host agnostic
A sneak peak or preview of ASP.NET vNext
Question?

Mais conteúdo relacionado

Mais procurados

Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013Thomas Robbins
 
Introduction to asp.net
Introduction to asp.netIntroduction to asp.net
Introduction to asp.netshan km
 
Introduction to ASP.NET MVC 1.0
Introduction to ASP.NET MVC 1.0Introduction to ASP.NET MVC 1.0
Introduction to ASP.NET MVC 1.0Shiju Varghese
 
Valentine with Angular js - Introduction
Valentine with Angular js - IntroductionValentine with Angular js - Introduction
Valentine with Angular js - IntroductionSenthil Kumar
 
TDD with ASP.NET MVC 1.0
TDD with ASP.NET MVC 1.0TDD with ASP.NET MVC 1.0
TDD with ASP.NET MVC 1.0Shiju Varghese
 
Discuss About ASP.NET MVC 6 and ASP.NET MVC 5
Discuss About ASP.NET MVC 6 and ASP.NET MVC 5Discuss About ASP.NET MVC 6 and ASP.NET MVC 5
Discuss About ASP.NET MVC 6 and ASP.NET MVC 5Aaron Jacobson
 
Angular on ASP.NET MVC 6
Angular on ASP.NET MVC 6Angular on ASP.NET MVC 6
Angular on ASP.NET MVC 6Noam Kfir
 
Entity Framework Core 1.0
Entity Framework Core 1.0Entity Framework Core 1.0
Entity Framework Core 1.0Senthil Kumar
 
ASP.NET MVC, AngularJS CRUD for Azerbaijan Technical University
ASP.NET MVC, AngularJS CRUD for Azerbaijan Technical UniversityASP.NET MVC, AngularJS CRUD for Azerbaijan Technical University
ASP.NET MVC, AngularJS CRUD for Azerbaijan Technical UniversitySyed Shanu
 
Modern Applications With Asp.net Core 5 and Vue JS 3
Modern Applications With Asp.net Core 5 and Vue JS 3Modern Applications With Asp.net Core 5 and Vue JS 3
Modern Applications With Asp.net Core 5 and Vue JS 3Alexandre Malavasi
 
Building rest services using aspnetwebapi
Building rest services using aspnetwebapiBuilding rest services using aspnetwebapi
Building rest services using aspnetwebapiBrij Mishra
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVCKhaled Musaied
 
Introduction to asp.net
Introduction to asp.netIntroduction to asp.net
Introduction to asp.netSHADAB ALI
 

Mais procurados (20)

Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013
 
Lap Around ASP.NET MVC 5
Lap Around ASP.NET MVC 5Lap Around ASP.NET MVC 5
Lap Around ASP.NET MVC 5
 
Introduction to asp.net
Introduction to asp.netIntroduction to asp.net
Introduction to asp.net
 
Introduction to ASP.NET MVC 1.0
Introduction to ASP.NET MVC 1.0Introduction to ASP.NET MVC 1.0
Introduction to ASP.NET MVC 1.0
 
Valentine with Angular js - Introduction
Valentine with Angular js - IntroductionValentine with Angular js - Introduction
Valentine with Angular js - Introduction
 
TDD with ASP.NET MVC 1.0
TDD with ASP.NET MVC 1.0TDD with ASP.NET MVC 1.0
TDD with ASP.NET MVC 1.0
 
Discuss About ASP.NET MVC 6 and ASP.NET MVC 5
Discuss About ASP.NET MVC 6 and ASP.NET MVC 5Discuss About ASP.NET MVC 6 and ASP.NET MVC 5
Discuss About ASP.NET MVC 6 and ASP.NET MVC 5
 
Scaffolding in One Asp.Net
Scaffolding in One Asp.NetScaffolding in One Asp.Net
Scaffolding in One Asp.Net
 
Angular on ASP.NET MVC 6
Angular on ASP.NET MVC 6Angular on ASP.NET MVC 6
Angular on ASP.NET MVC 6
 
ASP.NET Brief History
ASP.NET Brief HistoryASP.NET Brief History
ASP.NET Brief History
 
Entity Framework Core 1.0
Entity Framework Core 1.0Entity Framework Core 1.0
Entity Framework Core 1.0
 
ASP.NET MVC, AngularJS CRUD for Azerbaijan Technical University
ASP.NET MVC, AngularJS CRUD for Azerbaijan Technical UniversityASP.NET MVC, AngularJS CRUD for Azerbaijan Technical University
ASP.NET MVC, AngularJS CRUD for Azerbaijan Technical University
 
Modern Applications With Asp.net Core 5 and Vue JS 3
Modern Applications With Asp.net Core 5 and Vue JS 3Modern Applications With Asp.net Core 5 and Vue JS 3
Modern Applications With Asp.net Core 5 and Vue JS 3
 
MVC 6 Introduction
MVC 6 IntroductionMVC 6 Introduction
MVC 6 Introduction
 
ASP.NET MVC 3
ASP.NET MVC 3ASP.NET MVC 3
ASP.NET MVC 3
 
Building rest services using aspnetwebapi
Building rest services using aspnetwebapiBuilding rest services using aspnetwebapi
Building rest services using aspnetwebapi
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
 
ASP.NET
ASP.NETASP.NET
ASP.NET
 
MSDN - ASP.NET MVC
MSDN - ASP.NET MVCMSDN - ASP.NET MVC
MSDN - ASP.NET MVC
 
Introduction to asp.net
Introduction to asp.netIntroduction to asp.net
Introduction to asp.net
 

Destaque

Undoing Things in Git
Undoing Things in GitUndoing Things in Git
Undoing Things in Gitgittower
 
Building Next Generation Web Apps and Services using ASP.NET 5
Building Next Generation Web Apps and Services using ASP.NET 5Building Next Generation Web Apps and Services using ASP.NET 5
Building Next Generation Web Apps and Services using ASP.NET 5Shravan Kumar Kasagoni
 
#Code: The Programmed Revolution
#Code: The Programmed Revolution #Code: The Programmed Revolution
#Code: The Programmed Revolution Fabernovel
 
Asp.net html server control
Asp.net html  server controlAsp.net html  server control
Asp.net html server controlSireesh K
 
Asp.net server controls
Asp.net server controlsAsp.net server controls
Asp.net server controlsRaed Aldahdooh
 
Learn SUIT: CSS Naming Convention
Learn SUIT: CSS Naming ConventionLearn SUIT: CSS Naming Convention
Learn SUIT: CSS Naming ConventionIn a Rocket
 
ASP.NET Core 1.0
ASP.NET Core 1.0ASP.NET Core 1.0
ASP.NET Core 1.0Ido Flatow
 
Hacking 101 & Yahoo Mobile Developer Suite - YMDC NYC
Hacking 101 & Yahoo Mobile Developer Suite - YMDC NYCHacking 101 & Yahoo Mobile Developer Suite - YMDC NYC
Hacking 101 & Yahoo Mobile Developer Suite - YMDC NYCSaurabh Sahni
 
Detecting Hacks: Anomaly Detection on Networking Data
Detecting Hacks: Anomaly Detection on Networking DataDetecting Hacks: Anomaly Detection on Networking Data
Detecting Hacks: Anomaly Detection on Networking DataJames Sirota
 
Does That Belong Here? A Facebook Versus LinkedIn Infographic
Does That Belong Here? A Facebook Versus LinkedIn InfographicDoes That Belong Here? A Facebook Versus LinkedIn Infographic
Does That Belong Here? A Facebook Versus LinkedIn InfographicBoston Interactive
 
How to Establish a Strong Visual Brand on Social Media
How to Establish a Strong Visual Brand on Social MediaHow to Establish a Strong Visual Brand on Social Media
How to Establish a Strong Visual Brand on Social MediaRebekah Radice
 
Introduction to Go programming
Introduction to Go programmingIntroduction to Go programming
Introduction to Go programmingExotel
 
Productivity Facts Every Employee Should Know
Productivity Facts Every Employee Should KnowProductivity Facts Every Employee Should Know
Productivity Facts Every Employee Should KnowRobert Half
 

Destaque (18)

Controls in asp.net
Controls in asp.netControls in asp.net
Controls in asp.net
 
What The Web!
What The Web!What The Web!
What The Web!
 
Undoing Things in Git
Undoing Things in GitUndoing Things in Git
Undoing Things in Git
 
Building Next Generation Web Apps and Services using ASP.NET 5
Building Next Generation Web Apps and Services using ASP.NET 5Building Next Generation Web Apps and Services using ASP.NET 5
Building Next Generation Web Apps and Services using ASP.NET 5
 
#Code: The Programmed Revolution
#Code: The Programmed Revolution #Code: The Programmed Revolution
#Code: The Programmed Revolution
 
Grid view in asp.net
Grid view in asp.netGrid view in asp.net
Grid view in asp.net
 
Asp.net html server control
Asp.net html  server controlAsp.net html  server control
Asp.net html server control
 
Asp.net server controls
Asp.net server controlsAsp.net server controls
Asp.net server controls
 
Learn SUIT: CSS Naming Convention
Learn SUIT: CSS Naming ConventionLearn SUIT: CSS Naming Convention
Learn SUIT: CSS Naming Convention
 
ASP.NET Core 1.0
ASP.NET Core 1.0ASP.NET Core 1.0
ASP.NET Core 1.0
 
Hacking 101 & Yahoo Mobile Developer Suite - YMDC NYC
Hacking 101 & Yahoo Mobile Developer Suite - YMDC NYCHacking 101 & Yahoo Mobile Developer Suite - YMDC NYC
Hacking 101 & Yahoo Mobile Developer Suite - YMDC NYC
 
Detecting Hacks: Anomaly Detection on Networking Data
Detecting Hacks: Anomaly Detection on Networking DataDetecting Hacks: Anomaly Detection on Networking Data
Detecting Hacks: Anomaly Detection on Networking Data
 
Does That Belong Here? A Facebook Versus LinkedIn Infographic
Does That Belong Here? A Facebook Versus LinkedIn InfographicDoes That Belong Here? A Facebook Versus LinkedIn Infographic
Does That Belong Here? A Facebook Versus LinkedIn Infographic
 
Controls in asp.net
Controls in asp.netControls in asp.net
Controls in asp.net
 
Staff development
Staff developmentStaff development
Staff development
 
How to Establish a Strong Visual Brand on Social Media
How to Establish a Strong Visual Brand on Social MediaHow to Establish a Strong Visual Brand on Social Media
How to Establish a Strong Visual Brand on Social Media
 
Introduction to Go programming
Introduction to Go programmingIntroduction to Go programming
Introduction to Go programming
 
Productivity Facts Every Employee Should Know
Productivity Facts Every Employee Should KnowProductivity Facts Every Employee Should Know
Productivity Facts Every Employee Should Know
 

Semelhante a Introduction to ASP.NET MVC

Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NETRajkumarsoy
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET PresentationRasel Khan
 
Introduction Asp.Net Core, MVC, Docker (Linux), Postman and Swagger
Introduction Asp.Net Core, MVC, Docker (Linux), Postman and SwaggerIntroduction Asp.Net Core, MVC, Docker (Linux), Postman and Swagger
Introduction Asp.Net Core, MVC, Docker (Linux), Postman and SwaggerAgusto Sipahutar
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologiesHosam Kamel
 
Lightweight webdev
Lightweight webdevLightweight webdev
Lightweight webdevdamianofusco
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Bluegrass Digital
 
Introduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCIntroduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCSaineshwar bageri
 
SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4Jon Galloway
 
ASP .Net Core SPA Templates
ASP .Net Core SPA TemplatesASP .Net Core SPA Templates
ASP .Net Core SPA TemplatesEamonn Boyle
 
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014Enea Gabriel
 
MVC 6 - the new unified Web programming model
MVC 6 - the new unified Web programming modelMVC 6 - the new unified Web programming model
MVC 6 - the new unified Web programming modelAlex Thissen
 
Murach: An introduction to web programming with ASP.NET Core MVC
Murach: An introduction to web programming with ASP.NET Core MVCMurach: An introduction to web programming with ASP.NET Core MVC
Murach: An introduction to web programming with ASP.NET Core MVCMahmoudOHassouna
 
Using MVC with Kentico 8
Using MVC with Kentico 8Using MVC with Kentico 8
Using MVC with Kentico 8Thomas Robbins
 

Semelhante a Introduction to ASP.NET MVC (20)

Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
 
Mvc4
Mvc4Mvc4
Mvc4
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
Introduction Asp.Net Core, MVC, Docker (Linux), Postman and Swagger
Introduction Asp.Net Core, MVC, Docker (Linux), Postman and SwaggerIntroduction Asp.Net Core, MVC, Docker (Linux), Postman and Swagger
Introduction Asp.Net Core, MVC, Docker (Linux), Postman and Swagger
 
Mvc3 part1
Mvc3   part1Mvc3   part1
Mvc3 part1
 
ASP.pptx
ASP.pptxASP.pptx
ASP.pptx
 
Asp 1a-aspnetmvc
Asp 1a-aspnetmvcAsp 1a-aspnetmvc
Asp 1a-aspnetmvc
 
Aspnetmvc 1
Aspnetmvc 1Aspnetmvc 1
Aspnetmvc 1
 
ASP.NET 5
ASP.NET 5ASP.NET 5
ASP.NET 5
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologies
 
Lightweight webdev
Lightweight webdevLightweight webdev
Lightweight webdev
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015
 
Introduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCIntroduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVC
 
SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4
 
ASP .Net Core SPA Templates
ASP .Net Core SPA TemplatesASP .Net Core SPA Templates
ASP .Net Core SPA Templates
 
Aspnet mvc
Aspnet mvcAspnet mvc
Aspnet mvc
 
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
 
MVC 6 - the new unified Web programming model
MVC 6 - the new unified Web programming modelMVC 6 - the new unified Web programming model
MVC 6 - the new unified Web programming model
 
Murach: An introduction to web programming with ASP.NET Core MVC
Murach: An introduction to web programming with ASP.NET Core MVCMurach: An introduction to web programming with ASP.NET Core MVC
Murach: An introduction to web programming with ASP.NET Core MVC
 
Using MVC with Kentico 8
Using MVC with Kentico 8Using MVC with Kentico 8
Using MVC with Kentico 8
 

Último

Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfIdiosysTechnologies1
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 

Último (20)

Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdf
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 

Introduction to ASP.NET MVC

  • 2. What is ASP.NET MVC? Web Development Framework The Most Up-to-date Ideas and Techniques from Agile Development The Best Part of ASP.NET Platform It is a complete alternative to traditional ASP.NET Web Forms
  • 3. Understanding the History of ASP.NET .NET A multi-language managed code platform (brand new at the time – a landmark in its own right) ASP.NET A way to host .NET applications in IIS, letting you interact With HTTP requests and responses ASP.NET Web Forms A set of UI components (pages, buttons, etc.) Pulse a stateful, object-oriented GUI Programming model
  • 4. • ASP.NET 1.0 was first released in 2002 (it was same thing with Webform) • ASP.NET 2.0 was released in 2005 along with Visual Studio 2005 • ASP.NET MVC was announced in 2007 • ASP.NET 3.5 followed in 2008 and brought with it DynamicData, which enables you to rapidly generate data-driven applications in minutes. • ASP.NET 4 was released along with VS2010. At the same time ASP.NET MVC 4 was released • ASP.NET 4.5 was released along with VS2012 in 2012. This release included ASP.NET MVC 4.5 • ASP.NET 4.5.1 was released along with VS2013. MVC 5.0 • ASP.NET 4.5.2 Update 1,2 VS 2013 (MVC 5.1)
  • 6. What Is Wrong with ASP.NET Web Forms ? Viewstate weight Page life cycle False sense of separation of concerns (SOC) Limited control over HTML Leaky abstraction Low testability
  • 7. MVC
  • 8. MVC (cont.) Model = HTML View= CSS Controller= Browser
  • 9. ASP.NET MVC ASP.NET MVC is a framework for building web applications that applies the general Model View Controller pattern to the ASP.NET framework
  • 10. How ASP.NET MVC Fits in with ASP.NET?
  • 11. • ASP.NET MVC 1 Overview : at the Austin ALT.NET conference in October 2007 in Redmond ScottGu showed a group of developers “this cool thing I wrote on a plane”- codenamed (Scalene) • including code and unit tests • Was released in March 2009 • ASP.NET MVC 2 Overview : was released just one year later, in March 2010 • UI helpers with automatic scaffolding with customizable templates • Attribute-based model validation on both client and server • Strongly typed HTML helpers • Improved Visual Studio tooling • ASP.NET MVC 3 Overview : shipped just 10 months after MVC 2 • The Razor view engine • Support for .NET 4 Data Annotations • Improved model validation • Better JavaScript support with unobtrusive JavaScript, jQuery Validation, and JSON binding • Use of NuGet to deliver software and manage dependencies throughout the platform
  • 12. • Razor View Engine Razor is the first major update to rendering HTML since ASP.NET 1 shipped almost a decade ago. The default view engine used in MVC 1 and 2 was commonly called the Web Forms view engine syntax in a Web Forms page is shown here :
  • 13. Razor was designed specifically as a view engine syntax. It has one main focus: code-focused templating for HTML generation. Here’s how that same markup would be generated using Razor: ASP.NET MVC 3.0 Features
  • 14. The Razor syntax is easier to type, and easier to read. Razor doesn’t have the XML-like heavy syntax of the Web Forms view engine. • Compact, expressive, and fluid • Not a new language : Razor is a syntax that lets you use your existing .NET coding skills in a template in a very intuitive way. • Easy to learn: Precisely because Razor is not a new language, it’s easy to learn. You know HTML, you know .NET; just type HTML and hit the @ sign whenever you need to write some .NET code. • Good IntelliSense ASP.NET MVC 3.0 Features (cont.)
  • 15. • Validation Improvements Validation is an important part of building web applications, but it’s never fun. MVC 3 extended the validation support to cover most scenarios you’re likely to encounter. • .NET 4 Data Annotation Support : • Unobtrusive JavaScript using data- instead of something like onclick,… • jQuery Validation • JSON Binding : enabling your action methods to accept and model-bind data in JSON format. • Dependency Resolution : MVC 3 introduced a new concept called a dependency resolver, which greatly simplified the use of dependency injection in your applications. ASP.NET MVC 3.0 Features (cont.)
  • 16. • MVC 4 Overview • ASP.NET Web API : ASP.NET MVC development style but is tailored to writing HTTP services • Enhancements to default project templates • Mobile project template using jQuery Mobile • Display Modes • Task support for Asynchronous Controllers • Bundling and minification ASP.NET MVC 4
  • 17. • Enhancements to Default Project Templates MVC 1.0 MVC 4.0 ASP.NET MVC 4 (cont.)
  • 18. • Mobile Project Template Using jQuery Mobile Responsive jQuery Mobile ASP.NET MVC 4 (cont.)
  • 19. • Display Modes Display modes use a convention-based approach to allow selecting different views based on the browser making the request. The default view engine first looks for views with names ending with .Mobile.cshtml when the browser’s user agent indicates a known mobile device. ASP.NET MVC 4 (cont.)
  • 20. • Bundling and Minification This system reduces requests to your site by combining several individual script references into a single request. ASP.NET MVC 4 (cont.)
  • 22. • MVC 5 Overview • One ASP.NET • ASP.Net Identity • Bootstrap 3.0 in the MVC template • Authentication Filters • Filter overrides • Attribute routing (my Article here) ASP.NET MVC 5
  • 23. • Includes new cloud-optimized versions of MVC, Web API, Web Pages, SignalR, and Entity Framework. • MVC, Web API, and Web Pages will be merged into one framework, called MVC 6 • MVC 6 has no dependency on System.Web • vNext uses the Rosyln compiler to compile code dynamically • vNext is open source and cross platform • vNext is host agnostic A sneak peak or preview of ASP.NET vNext