Authors: Scott Allen, Alex Wolf, Chris Klug, Shawn Wildermuth, Miguel Castro, Paul D. Sheriff, Matt Honeycutt, Roland Guijt

MVC is an architectural pattern that separates applications into three components: the model, the view, and the controller. ASP.NET MVC provides this functionality to the ASP.NET... Read more

What you will learn

  • Understanding the MVC pattern
  • Modeling an application in a domain-driven way
  • Building loosely coupled components
  • Understand MVC request processing
  • Defining functionality with actions
  • Giving actions behavior with ActionResults
  • Manipulating behavior with attributes
  • Using Razor syntax
  • Applying HTML helpers
  • Reusing view parts
  • Passing data to views
  • Understanding model binding
  • Applying Models to the application
  • Using ViewBag and ViewData
  • Building a custom Model binder
  • How the routing system works
  • Building the routing table
  • Mapping routing values
  • Using route constraints
  • Creating URLs from routes
  • Plugging filters into MVC
  • Securing the application with authorization filters
  • Reacting to action execution with Action Filters
  • Monitoring and manipulating ViewResults with Result Filters
  • Reacting to Action execution with Action Filters
  • Dealing with unhandled exceptions with Exeption Filters
  • Understanding how validation works
  • Defining validation rules with annotations
  • Creating custom validation rules with annotations
  • Adding code to Contollers to support validation
  • Supporting validation in Views
  • Enhancing user experience with Ajax forms
  • Using asynchronous links
  • Detecting and responding to Ajax requests
  • Understanding OWIN/Katana
  • Configuring the OWIN startup class
  • Adding middleware to the pipeline
  • Creating custom middleware
  • Understanding the REST principle
  • Sending and receiving data
  • Serving content with media types
  • Consuming a service with .NET
  • Consuming a service with JavaScript


Basic web development, familiarity with the C# language and ASP.NET framework


The courses in this section will give you a gentle introduction to the MVC pattern, as well as the main components within the ASP.NET MVC framework.

ASP.NET MVC 5 Fundamentals

by Scott Allen

Aug 29, 2019 / 5h 45m

5h 45m

Start Course

This course gives you all the fundamentals you need to get started building applications with ASP.NET MVC. In this course, ASP.NET MVC 5 Fundamentals, you will gain the ability to build and maintain applications with ASP.NET MVC. First, you will learn how to handle web requests using controllers in the MVC framework. Next, you will discover how to render HTML using Razor views. Finally, you will explore how to publish applications. When you are finished with this course, you will have the skills and knowledge of ASP.NET MVC needed to build web applications.

Table of contents
  1. Course Overview
  2. Creating a New ASP.NET MVC Application
  3. Application Startup and Configuration
  4. Understanding MVC Controllers
  5. Using MVC Models
  6. Using Entity Framework in MVC Applications
  7. Razor Views
  8. Front End Frameworks
  9. Deploying ASP.NET MVC Applications

The MVC Request Life Cycle

by Alex Wolf

Jun 3, 2015 / 2h 32m

2h 32m

Start Course

This course introduces ASP.NET developers, specifically MVC developers, to the life cycle of an HTTP request as it travels through the ASP.NET platform and the MVC framework.

The course will educate developers about the major steps in the Request Life Cycle, as well as how to extend and customize them when appropriate. The focus of the course will not be on MVC coding and how to build applications, but rather on the relationships between the components that comprise the request pipeline.

The inner workings of the MVC framework will also be discussed where applicable, such as Controller Factories, Dependency Resolvers, and Result Execution.

Table of contents
  1. Overview
  2. The Application and Request Life Cycle Events
  3. Working with Routing, HttpHandlers, and HttpModules
  4. Understanding Controller Initialization
  5. Action Method Execution
  6. Exploring Action Results and the View Engine

Understanding OWIN and Katana

by Chris Klug

Oct 27, 2015 / 1h 50m

1h 50m

Start Course

Have you ever wished you could have a low hassle, easy to use, configurable way of building web applications in .NET? Maybe the ability to write a web application in just a few lines, as you can in Node.js? Well, OWIN gives you this, and then some. In this course, you will gain an understanding of how OWIN works and how it can do wonders for your .NET based web application development.

Table of contents
  1. What Is OWIN?
  2. Building a Simple OWIN Pipeline
  3. Creating Middleware with OWIN
  4. Integrating Frameworks
  5. Securing OWIN Pipelines
  6. Integrating Social Media Authentication
  7. Hosting an OWIN Pipeline


Our intermediate courses will show you how to level-up your new ASP.NET MVC skills. These courses will walk you through rebuilding legacy forms, code optimization, and implementing APIs.

Building an API with ASP.NET Web API

by Shawn Wildermuth

Mar 25, 2019 / 2h 42m

2h 42m

Start Course

Building APIs can be a challenge for many web developers but with ASP.NET Web API, this process can be simplified. In this course, Building an API with ASP.NET Web API, you will learn foundational knowledge and gain the ability to implement and build your own API's. First, you will learn and understand the role of Functional APIs in larger systems. Next, you will discover how to build association APIs to make obvious, self-documenting APIs. Finally, you will explore how to implement a complete API using Web API. By the end of this course, you’ll know how to implement a complete, maintainable API using ASP.NET Web API.

Table of contents
  1. Course Overview
  2. Pragmatic REST
  3. Your First API
  4. Modify Data
  5. Associations in APIs
  6. Functional APIs
  7. Versioning Your API

Improving Your MVC Applications with 10 Extension Points

by Alex Wolf

Nov 12, 2015 / 3h 8m

3h 8m

Start Course

The goal of this course is to teach developers how to customize and extend the MVC framework to meet their needs. MVC is built with powerful extensibility in mind and leveraging this flexibility can help solve tasks faster and more effectively. This course explores the extension points developers are most likely to work with in a real project and which provide the most value in the shortest amount of time. Understanding these features is crucial to building maintainable, properly structured MVC applications.

Table of contents
  1. Overview
  2. Improving Application Responses with Custom Action Results
  3. Organizing Application Flow with Action Filters
  4. Keeping Your Razor Code Clean with HTML Helpers
  5. Enabling Theme Support with a Custom View Engine
  6. Improving Error Handling with Custom Exception Filters
  7. Extending Validation to Improve Data Integrity
  8. Extending Data Binding with Custom Model Binders
  9. Improving Data Availability with Custom Value Providers
  10. Customizing Security Using Authentication Filters
  11. Influencing Action Method Execution Using Custom Selectors

Implementing Autofac in ASP.NET

by Miguel Castro

Sep 12, 2019 / 2h 15m

2h 15m

Start Course

Learning how Dependency Injection (DI) works and setting it up in sample console apps is good and necessary, but it is only half the battle. You need to know how to implement it into the app you are writing. Though DI with Autofac is usable in any kind of application, the web represents a large portion of the apps developers are writing, and not everyone has the luxury of jumping on ASP Core. In this course, Implementing Autofac in ASP.NET, you'll learn how to implement Autofac in an ASP.NET application. First, you'll get started from the installation with every branch of ASP.NET, this includes, MVC, Web API, OWIN, and even Web Forms. Next, you'll learn how to get Autofac up and running in your ASP.NET application, no matter what kind. Finally, you'll review some implementation patterns and scenarios that extend beyond just using it in a controller. When you're finished with this course, you'll have the skills to reap the benefits of DI with Autofac in ASP.NET together and have some good geeky programming fun along the way.

Table of contents
  1. Course Overview
  2. Intro & Autofac Primer w/App Demo
  3. First Steps in Implementing Autofac in ASP.NET
  4. Registering Other Components
  5. Injecting and Resolving Your Components
  6. Advanced Patterns
  7. Additional Scenarios

Build an HTML Helper Library for ASP.NET MVC 5

by Paul D. Sheriff

Jan 5, 2016 / 1h 52m

1h 52m

Start Course

Paul's Training Company has developed a web site to input their product data. Your boss wants you to add a login screen and more pages to the site. Unfortunately, he needs it done quickly, so that means you need to work smarter. He wants all the controls to use Bootstrap and take advantage of HTML 5. Working with the limited set of HTML Helpers in MVC means you have to add a lot of custom attributes. This takes more time to code and leads to potential runtime errors. If you had more flexible HTML Helpers that added HTML5 and Bootstrap CSS for you, this would speed up development and testing. In this course, you learn to build a set of MVC HTML Helpers to do just this.

Table of contents
  1. Understanding the Benefits of HTML Helpers
  2. Creating Custom HTML Helpers
  3. Capturing HTML and CSS Features in HTML Helpers
  4. Extending Existing MVC HTML Helpers
  5. Promoting HTML and CSS Reuse with HTML Helpers


These advanced topics will round out your knowledge of the MVC framework. You’ll learn domain-driven design, SignalR and finish off with building your own application framework.

Build Your Own Application Framework with ASP.NET MVC 5

by Matt Honeycutt

Mar 13, 2014 / 3h 25m

3h 25m

Start Course

In this course, you will learn all about ASP.NET MVC, the various pieces and components that can be extended or customized, and how to leverage those pieces to build your own application framework. You’ll learn about concepts such as editor and display templates, layouts, building custom helpers, action filters, data annotations, and more. After a thorough introduction to application frameworks concepts, you will see how to craft your own optimized infrastructure for your applications. You’ll learn how to create your own HTML helpers, action results, data annotations, and action filters, as well as how to customize and extend larger subsystems such as model metadata providers, model binders, view engines, and dependency resolvers. You will learn how the baked-in conventions can be customized, enriched with additional conventions, or completely overwritten with whatever best fits your day-to-day needs. By the end of the course, you will know how to bend ASP.NET MVC 5 to maximize your productivity.

Table of contents
  1. What Is an "Application Framework?"
  2. The Power of an Inversion of Control Container
  3. Optimize Your Controller Layer
  4. Optimize Your View Layer
  5. Optimize Your JavaScript

Getting Started with ASP.NET SignalR

by Roland Guijt

May 16, 2019 / 1h 1m

1h 1m

Start Course

Real-time web functionality is almost a must when developing a web app nowadays. In this course, Getting Started with ASP.NET SignalR, you will not only learn how the real-time web works, but also how to implement it using the greatest real-time web framework available.

First, you will explore real-time web in general and about the low-level transports SignalR uses:

  • WebSocket
  • Server Sent Events (SSE)
  • Long polling
Next, you will learn about the SignalR concepts and the ways SignalR uses the underlying transports to do Remote Procedure Call (RPC) by utilizing Hubs and how to create javaScript and .NET clients for them.

Finally, you will see what the challenges are when scaling out and how to implement an example application step by step and deploy it to Azure.

When you're done watching this course, you can go full speed ahead with developing real-time web applications!

Table of contents
  1. Course Overview
  2. Starting with SignalR
  3. Working with Hubs
  4. Writing Clients
  5. Hosting, Deploying, and Scaling a SignalR App

Rebuilding Web Forms Applications in MVC

by Alex Wolf

Apr 12, 2016 / 3h 49m

3h 49m

Start Course

Transitioning from ASP.NET Web Forms applications to MVC applications can be difficult, but you can ease the transition. This course, Rebuilding Web Forms Applications in MVC, will help developers, like you, to migrate to a new framework. You'll complete this task using a two-tiered approach: first, you'll compare and contrast what high-level concepts are shared between Web Forms and MVC. Next, you'll learn how they are both built on the larger ASP.NET platform. Finally, you'll explore how the specific implementation details of those concepts vary between frameworks, demonstrated by rebuilding a meaningful sample application. By the end of this course, you'll be more prepared to rebuild apps and make a smooth transition to MVC.

Table of contents
  1. Course Overview
  2. Putting Web Forms and MVC in Perspective
  3. Request Management
  4. Designing with Layouts and Views
  5. Working with Forms
  6. Implementing Data Validation
  7. Understanding Partial Views and Child Actions
  8. Enhancing the Application with Ajax
  9. Working with Data

Consolidating MVC Views Using Single Page Techniques

by Paul D. Sheriff

Oct 9, 2015 / 2h 29m

2h 29m

Start Course

Paul's Training Company needs a web page to add, edit, delete, list, and search for products at their company. You have been tasked with building this page using MVC 5, but you don't want to use the five separate pages generated from the Visual Studio 2013 scaffolding engine. Instead you want to combine all those pages together in a "SPA"-like technique. You also want to take advantage of MVVM so you can reuse all data access and validation in a mobile application that is to come in the future. In this course, I will walk you through how to use all of these tools to accomplish this SPA-like technique in your MVC applications and improve your testability and reusability.

Table of contents
  1. Consolidating MVC Views Using Single Page Techniques
  2. List and Search Data Using MVVM, MVC5, and Bootstrap
  3. Add and Validate Data with Data Annotations, MVVM, and MVC 5
  4. Modify & Delete Data Using Hidden Fields and Data Dash Attributes
  5. Reusability Using a View Model Base Class
Offer Code *
Email * First name * Last name *
Country *

* Required field

Opt in for the latest promotions and events. You may unsubscribe at any time. Privacy Policy

By providing my phone number to Pluralsight and toggling this feature on, I agree and acknowledge that Pluralsight may use that number to contact me for marketing purposes, including using autodialed or pre-recorded calls and text messages. I understand that consent is not required as a condition of purchase from Pluralsight.

By activating this benefit, you agree to abide by Pluralsight's terms of use and privacy policy.

I agree, activate benefit
Learning Paths


  • Number of Courses11 courses
  • Duration31 hours
  • Skill IQ available Skill IQ

MVC is an architectural pattern that separates applications into three components: the model, the view, and the controller. ASP.NET MVC provides this functionality to the ASP.NET framework as an alternative to the WebForms pattern. You’ll love working with this highly-testable and lightweight framework!

Courses in this path


The courses in this section will give you a gentle introduction to the MVC pattern, as well as the main components within the ASP.NET MVC framework.

Join our learners and upskill
in leading technologies