MVC Recommended Resources
A good place to get your questions answered or to find solutions to problems is in the ASP.NET MVC forum or on stackoverflow.
Getting Started with ASP.NET MVC
- Intro to ASP.NET MVC 5
- Introduction to ASP.NET MVC (video by Pluralsight)
- ASP.NET MVC Overview
- Free 6 hour online course - Developing ASP.NET MVC 4 Web Applications Jump Start
- Learning MVC - Part 1: Introduction to MVC Architecture and Separation of Concerns
- Poster: Lifecycle of an ASP.NET MVC 5 Application
New Featured Content
- Selecting Cultures for Localization in ASP.NET
- Create an ASP.NET MVC 5 App with Facebook and Google OAuth2 Sign-on
- Lifecycle of an ASP.NET MVC 5 Application (PDF)
- What not to do in ASP.NET, and what to do instead
- Releasing SocialGoal - Reference Web App for ASP.NET MVC 5, EF 6 Code First, AutoMapper, Autofac, TDD and DDD
- Building Real-World Cloud Apps with Azure
Microsoft Azure
Videos from //build/ 2014: (Azure and Visual Studio)
- Deep Dive into Hidden Gems, Tips and Tricks for Azure Web Sites by David Ebbo
- What's New for ASP.NET and Web in Visual Studio 2013 Update 2 and Beyond by Scott Hanselman, Scott Hunter
- Avoiding Cloud Fail: Learning from the Mistakes of Azure with Mark Russinovich
- Deep Dive: Improving Performance in Your ASP.NET App by Levi Broderick
- What's New for Azure Developers in Visual Studio and Azure SDK Dan Fernandez, Paul Yuknewicz (MSFT)
- Microsoft Azure Storage – What's New, Best Practices and Patterns Jai Haridas, Serdar Ozler
- Tips and Tricks in Visual Studio 2013 by Cathy Sullivan
- Automation Everywhere with New SDKs, Tools, and Services in Azure by Brady Gaster, Joe Levy
- Building Big: Lessons Learned from Azure Customers by Chris Clayton, Mark Simms
- Building a Single Page Application with ASP.NET and AngularJS by David Catuhe, Jon Galloway
- Designing and Implementing Hybrid Cloud Solutions for Architects
- Azure Resource Group Model: Modern Management for Modern Cloud by Gautam Thapar, Nathan Totten
- Building Web APIs for Mobile Apps Using ASP.NET Web API 2.1 by Daniel Roth
- The New Authentication Model for Web, Mobile, and Cloud Applications by Lucas Adams, Stuart Kwan
- Extending Your On-Premises Network into Azure Securely Ganesh Srinivasan
- What's New for Web Developers by Dan Fernandez, Mads Kristensen
- Building Modern Web Applications with Visual Studio and Web Essentials Mads Kristensen
- Using the Cloud-Based Load Testing Service and Application Insights to Find Scale and Performance by Charles Sterling
- Diagnosing Issues with Cloud Applications Hosted in Azure Using Visual Studio by Boris Scholl
- Rapidly Detect Application Outages with Application Insights by Vlad Joanovic
- Azure Web Sites: Architecting Massive-Scale Ready-For-Business Web Apps Yochay Kiriaty
- Azure SQL Database: Under the Hood Tobias Ternstrom
Security
- Create an ASP.NET MVC 5 App with Facebook and Google OAuth2 Sign-on
- What not to do in ASP.NET, and what to do instead
- How to build (and how not to build) a secure "remember me" feature by Troy Hunt
- Video: The New Authentication Model for Web, Mobile, and Cloud Applications by Lucas Adams, Stuart Kwan
- Video: Building Enterprise and SaaS Web Apps and Web APIs using Azure Active Directory for Sign In by Vittorio Bertocci
- ASP.NET Identity 2.0.0
- ASP.NET MVC 5 Identity: Extending and Modifying Roles
- Working With IAuthenticationFilter in ASP.NET MVC 5
- stackoverflow threads on security by Levi
- KnockoutJS and ASP.NET MVC – Alternate techniques and using the Anti Forgery Token
- ASP.NET MVC 5 Authentication Filters
- Security In ASP.NET MVC
- Securing your ASP.NET MVC 4 App
- XSRF/CSRF Prevention in ASP.NET MVC and Web Pages
- OWASP Top 10 for .NET developers
- Using OAuth Providers with MVC 4
- Hack-Proofing Your ASP.NET Applications December 2011 MSDN Magazine article by Adam Tuliper
- Securing Your ASP.NET Applications January 2012 MSDN Magazine article by Adam Tuliper
- Preventing Open Redirection Attacks
- How to Create an Intranet Site Using ASP.NET MVC
- ASP.NET MVC Value Provider for encrypted query string
- The HaaHa Show: Microsoft ASP.NET MVC Security with Haack and Hanselman (video)
- Claims-aware user identity in ASP.NET
- Adding custom roles to windows roles in ASP.NET
- Creating a Custom Route Constraint
- Implementing Role Based Menu in ASP.NET MVC 4
Membership, Authentication
- Deploy a Secure ASP.NET MVC application with OAuth, Membership and SQL Database
- SimpleMembership, Membership Providers, Universal Providers and the new ASP.NET 4.5 Web Forms and ASP.NET MVC 4 templates
- Customize the SimpleMembership in ASP.NET MVC 4
- Membership is not the same as Forms Authentication
- Think twice about using MembershipProvider (and SimpleMembership)
- Implementing MVC Two Factor Authentication with Google Authenticator
- new
- ASP.NET Identity and Azure Table Storage
OWIN and Katana
- Getting started with OWIN and Katana
- A primer on external login providers (social logins) with OWIN/Katana authentication middleware
Data Access in ASP.NET MVC
- Getting Started with Entity Framework using ASP.NET MVC
- ASP.NET Data Access Content Map
- Building an ASP.NET MVC4 Application with EF and Web API
- DataList in ASP.NET MVC & KnockoutJS
Web Forms to MVC
- Migrating ASP.NET Web Forms to the MVC Pattern with the ASP.NET Web API
- Matthew Kane's video, Deep Integration of MVC and WebForms
- ASP.NET MVC - Living in a Web Forms World
- Web Forms to MVC
- Integrating ASP.NET Web Forms and ASP.NET MVC
- Adopting ASP.NET MVC enhancements in an Existing Web Forms Project
Performance
- Video: Deep Dive: Improving Performance in Your ASP.NET App by Levi Broderick
- Video: Using the Cloud-Based Load Testing Service and Application Insights to Find Scale and Performance by Charles Sterling
- Using Asynchronous Methods in ASP.NET MVC 4
- Bundling, Minification and Optimization
- Using CDNs and Expires to Improve Web Site Performance
- Async File Uploads in MVC
- Video: High-Performance Web Platform: Real-World Problems and Solutions by Tobin Titus
- Video: Gain Early Warning of Performance Issues and Failures, and Pinpoint the Cause with Application by Bret Grinslade, Vlad Joanovic
- http://webdevchecklist.com/asp.net/performance/
- ASP.NET MVC View Model: Entity Framework & JSON Serialization Nandip Makwana shows a nice tip to increase performance (and lower CPU usage) by eliminating unnecessary serialization of child entities
- Async and Await in ASP.NET by Stephen Cleary
- Debugging and Performance using Glimpse
- Improve perceived performance of ASP.NET MVC websites with asynchronous partial views
- ASP.NET 4.5 & MVC 4: Revisiting IBundleTransform
- ASP.NET MVC 4: Cookieless domain for bundling and static resources
- Advanced Options of ASP.NET Bundling and Minification
- A harsh reminder about the importance of debug="false"
- ELMAH and MiniProfiler In ASP.NET MVC 4
- Using CDNs and Expires to Improve Web Site Performance
- Bundling and Minifying Inline CSS and JavaScript
- Async in ASP.NET (video)
- Bundling and Optimizing (video)
- ASP.NET MVC 4 - Making Asynchronous Calls to External Services from an Action Method
AngularJS, Knockout, KnockoutJS
- Knockout
- Getting Started with KnockoutJS in ASP.NET MVC
- Bootstrapping AngularJS Applications with Server-Side Data from ASP.NET MVC by Marius Schulz
- TypeScripted Knockout in ASP.NET MVC
- DataList in ASP.NET MVC & KnockoutJS
- Cascading drop down with knockout.js & ASP.NET MVC
- Loading KnockoutJS View Models from ASP.NET MVC, for faster page loads
- Master-Details view using Knockout and ASP.NET MVC
- AngularJS – Post data using the $resource Service in an ASP.NET MVC app
jQuery, Ajax, JSON, JavaScript
- Create a JavascriptResult for ASP.NET MVC
- Passing .NET Server-Side Data to JavaScript by Marius Schulz
- Generating External JavaScript Files Using Partial Razor Views by Marius Schulz
- ASP.NET MVC: Show Busy Indicator on Form Submit using JQuery and Ajax
- Using Custom Data Attributes to Store JSON Data in ASP.NET MVC
- MVC 4 links still relevant for MVC 5
- Sending JSON to an Action Method
- Build Rich User Interfaces using jQuery
- Auto populate DataTable columns to the Views in ASP.NET MVC by Sheo Narayan
- Using the HTML5 and jQuery UI Datepicker Popup Calendar with ASP.NET MVC
- Using the DropDownList Helper with ASP.NET MVC
- DropDownListFor with ASP.NET MVC
- DropDownList Helper Data Binding in ASP.NET MVC
- Pluralsight video showing how to work with JavaScript and Ajax
- Cascading DropDownList in ASP.NET MVC
- CascadingDropDown jQuery Plugin for ASP.NET MVC
- Client Side Progress Bar in ASP.NET MVC using jQuery UI, WebAPI and JsRender
- ASP.NET MVC Ajax using jQuery – Quick Start sample
- Creating Cascading DropDownLists using ASP.NET MVC 4 and jQuery
HTML5
- Using the HTML5 and jQuery UI Datepicker Popup Calendar with ASP.NET MVC
- Designing Accessibility with HTML5
- Build Mobile-Friendly HTML5 Forms with ASP.NET MVC 4 and jQuery Mobile
- Integrate HTML5 into Existing ASP.NET Web Forms and MVC Applications
Routing
- Attribute Routing in ASP.NET MVC 5
- Lifecycle of an ASP.NET MVC 5 Application (PDF)
- Using Constraints for Better Routing in MVC
- In depth: The ASP.NET MVC Pipeline
- ASP.NET MVC Routing
- ASP.NET MVC Routing Extensibility
- An Introduction to ASP.NET MVC Extensibility
- ASP.NET MVC Routing
- Strongly typed routing for MVC 4
Globalization, Internationalization and Localization
- ASP.NET MVC 5 Internationalization
- Selecting Cultures for Localization in ASP.NET
- ASP.NET MVC 5 Internationalization · Date and Time by Nadeem Afana
- ASP.NET MVC 5 Internationalization · How to Store Strings in a Database or Xml
- Globalization, Internationalization and Localization in ASP.NET MVC 3, JavaScript and jQuery
- Internationalization
- Localization
Azure and ASP.NET MVC
- Multi-Tier Application Using Storage Tables, Queues, and Blobs
- Windows Azure Web Sites: Quick-and-Easy Hosting as a Service
- Configuration Tips For ASP.NET MVC 4 on a Azure Website
- Deploying an ASP.NET Website to Azure in Visual Studio 2012 from a Git Repository directly
Mobile
- ASP.NET MVC 4 Mobile Tutorial
- Creating High-Performance Mobile Websites
- Creating Mobile-Optimized Views in ASP.NET MVC 4
- Build Mobile-Friendly HTML5 Forms with ASP.NET MVC 4 and jQuery Mobile
- Integrating jQuery Mobile into MVC Web Apps
- A Deeper Dive into jQuery Mobile
- What's New for Mobile Development in ASP.NET MVC 4
- Develop Hybrid Native and Mobile Web Apps
- Making a switchable Desktop and Mobile site with ASP.NET MVC 4 and jQuery Mobile
- MVC 4 Mobile Friendly Web Applications
- ASP.NET MVC 4 Mobile
Single Page Application (SPA)
- A .NET Developer Primer for Single-Page Applications MSDN Magazine
- Single-Page App with AngularJS and ASP.NET MVC 4
- Inside the ASP.NET Single Page Apps Template
- MVC Single Page Application Template Update for ASP.NET and Web Tools 2012.2 RC
- Inside the ASP.NET Single Page Apps Template
Twitter, Facebook
- The new Facebook application template and library for ASP.NET MVC
- Twitter.Bootstrap.MVC4
- MVC 4: facebook twitter login with oAuth
Unit Testing, TDD, Repository Pattern and Unit of Work
- Repository Pattern and Unit of Work with Entity Framework in ASP.NET MVC
- Creating Unit Testable Applications in ASP.NET MVC - A Beginner's Tutorial
- ASP.NET MVC controller dependency injection for beginners
- Writing Unit Tests for an ASP.NET MVC Action Method that handles Ajax Request and Normal Request
- Developing an ASP.NET MVC 4 Application for TDD using xUnit and Moq
- Testing ASP.NET MVC Views, from New Project to the Build Server (video)
- Quick Start: Test Driven Development(video)
- Test Driving ASP.NET MVC (video)
- Integration Testing With SpecsFor.Mvc – ASP.NET MVC Testing on Steroids! (video)
- Creating Unit Testable Applications in ASP.NET MVC - A Beginner's Tutorial
- Walkthrough: Using TDD with ASP.NET MVC (MVC 3)
- Releasing SocialGoal - Reference Web App for ASP.NET MVC 5, EF 6 Code First, AutoMapper, Autofac, TDD and DDD
Best Practices
- What not to do in ASP.NET, and what to do instead
- Web Developer Checklist
- Video: Don't do that, do this!
- ASP.NET MVC Solution Best Practices (video)
- SignalR, MVC, Web API (video)
- Best Practices for ASP.NET MVC
Deployment
Rich text Editors for MVC
- http://www.tinymce.com/
- http://www.componentone.com/SuperProducts/StudioASPNET/
- Rich Text Editing with Infragistics HTML Editor in both jQuery and ASP.NET MVC
- DevExpress ASP.NET MVC RichEdit Control
- Nesting Layouts in MVC by Russell Waite
General
- How to Upgrade an ASP.NET MVC 4 and Web API Project to ASP.NET MVC 5 and Web API 2
- Understanding ASP.NET MVC Filters and Attributes
- Content Negotiation and Web API for the ASP.NET MVC Developer
- Serving WebP images with ASP.NET MVC
- Nesting Layouts in MVC by Russell Waite
- Implementing RichTextEditor or WYSIWYG (TinyMCE) in ASP.NET MVC by Sheo Narayan
- Binding views with Anonymous type collection in ASP.NET MVC by Sheo Narayan
- Saving HTML 5 canvas as Image in ASP.NET MVC by Sheo Narayan
- Maintaining image size and position on the page in database using ASP.NET MVC by Sheo Narayan
- Developing a star rating in ASP.NET MVC by Sheo Narayan
- Upload and download files using ASP.NET MVC
- Using Fluent Validation with ASP.NET MVC
- Create Your Own Custom ViewWebPage for ASP.NET MVC
- Tracing in ASP.NET MVC Razor Views
- Rendering ASP.NET MVC Razor Views outside of MVC revisited
- Five Essential Front-End Tools That Should be Used with Modern MVC Projects
- The Features and Foibles of ASP.NET MVC Model Binding
- Cookie-based TempData provider
- Sharing a single _ViewStart across areas in ASP.NET MVC
- Filtering in ASP.NET MVC
- Get to Know Action Filters in ASP.NET MVC 3 Using HandleError (video)
- Custom MVC 4 Template Walkthrough
- Why ASP.NET MVC HTML Helper methods take lambda expressions as parameters
- A Web Developer's Look at the MVC4 Request Pipeline
- Understanding Text Encoding in ASP.NET MVC
- Upgrading an MVC4 Visual Studio 2010 Solution to Visual Studio 2012 and .Net 4.5 and EF 5
- ASP.NET MVC DisplayTemplate and EditorTemplates for Entity Framework DbGeography Spatial Types
- ASP.NET MVC - Highlight Current Link
- ASP.NET MVC: Handling Exceptions and 404 Errors
- Finding Bad Controllers
- ASP.NET MVC Tips, Tricks and Hidden Gems (video)
- Rendering an RDLC directly to the Response stream in ASP.NET MVC
- How To Achieve World(-Ready) Domination In ASP.NET MVC 4 (video)
- Deep Integration of MVC and WebForms (video)
- Enterprise Search with MVC 4 (video)
- Skinny controller in ASP.NET MVC 4
- Dynamic Menus in ASP.NET MVC 4 using EF Code First and jQuery
- Making ASP.NET GridView Responsive With jQuery FooTable
- Web Deployment using Visual Studio
- Custom Templates, Data Annotations and UI Hints in ASP.NET MVC