Authors: Shawn Wildermuth, Chris Klug, Vladimir Khorikov, Michael Palermo, Julie Lerman, Steve Smith, Scott Allen, Alex Wolf, Paul D. Sheriff, Matt Honeycutt

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


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 5 framework.


A Comparison of Microsoft Web Technologies

by Michael Palermo

Apr 12, 2016 / 1h 15m

Beginner • 1h 15m

Start Course

Before engaging in any web development project using the Microsoft web platform, a thorough knowledge of the technology options available is key to choosing the right path. In this course, A Comparison of Web Technologies, you will learn how to evaluate the strengths and challenges of each web technology, and determine which is best aligned with needs of developer. You will get to compare Web Forms, Web Pages, and MVC with each other using similar demos to showcase unique approaches. You will also get an understanding of how ASP.NET Core compares with the full ASP.NET framework. When you are finished with this course, you will have the ability to make a strategic choice as to which Microsoft web technology is best for you!

Table of contents
  1. Course Overview
    1m 27s
  2. An Introduction to the Microsoft Web Platform
    8m 34s
  3. Understanding How Web Forms Work
    17m 32s
  4. Understanding How Web Pages Work
    16m 9s
  5. Understanding How MVC Works
    16m 39s
  6. Understanding How ASP.NET Core Works
    9m 7s
  7. A Strategic Comparison
    6m 14s

ASP.NET MVC 5 Fundamentals

by Scott Allen

Nov 5, 2013 / 6h 14m

Intermediate • 6h 14m

Start Course

ASP.NET MVC 5 Fundamentals covers all the new features of ASP.NET MVC 5, as well as the new features for web developers in Visual Studio 2013. The course looks at the Katana and OWIN middleware components to see how the components work at a low level and how they fit into ASP.NET pipeline. The new identity and membership components are covered, and a demonstration is included to customize and seed the membership database. We look at Bootstrap 3's grid and responsive design system, as well as the Web API 2, including a demo of making authenticated calls against a Web API from JavaScript. The Entity Framework version 6 is covered including the new async API in EF6, and we'll build an application to stream performance counter data using SignalR and Knockout. Finally, there are tips and tricks for editing HTML, JavaScript, CSS and LESS with Visual Studio 2013 and extensions like Web Essentials, which brings the Zen Coding plugin to the Visual Studio.

Table of contents
  1. Introduction and Prerequisites
    15m 47s
  2. OWIN and Katana
    51m 13s
  3. Identity and Security
    54m 7s
  4. Bootstrap
    47m 27s
  5. WebAPI 2
    50m 1s
  6. Entity Framework 6
    1h 1m 10s
  7. SignalR
    49m 47s
  8. Web Developer Tools and Visual Studio 2013
    44m 45s

The MVC Request Life Cycle

by Alex Wolf

Jun 3, 2015 / 2h 32m

Intermediate • 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
    13m 12s
  2. The Application and Request Life Cycle Events
    25m 46s
  3. Working with Routing, HttpHandlers, and HttpModules
    26m 15s
  4. Understanding Controller Initialization
    28m 8s
  5. Action Method Execution
    34m 5s
  6. Exploring Action Results and the View Engine
    25m 23s

Understanding OWIN and Katana

by Chris Klug

Oct 27, 2015 / 1h 51m

Intermediate • 1h 51m

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?
    18m 57s
  2. Building a Simple OWIN Pipeline
    9m 27s
  3. Creating Middleware with OWIN
    15m 24s
  4. Integrating Frameworks
    20m 10s
  5. Securing OWIN Pipelines
    17m 32s
  6. Integrating Social Media Authentication
    16m 58s
  7. Hosting an OWIN Pipeline
    12m 32s


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


Implementing an API in ASP.NET Web API

by Shawn Wildermuth

Oct 1, 2013 / 6h 14m

Intermediate • 6h 14m

Start Course

Implementing a practical REST-based API can be a challenge. My previous course ( covered how to design a RESTful API while avoiding the dogmatic religion of REST but embracing the best of the pragmatic parts. In this course, I'll show you how to take that design and implement it in ASP.NET Web API including controllers, routing, dependency injection, versioning, security, hypermedia, REST constraints and caching.

Table of contents
  1. Course Introduction
    1m 50s
  2. Implementing an API in ASP.NET Web API
    1h 2m
  3. API Basics
    1h 20m 43s
  4. Securing APIs
    1h 26m 55s
  5. Versioning
    47m 47s
  6. REST Constraints
    47m 53s
  7. Web API Version 2
    47m 16s

Rebuilding Web Forms Applications in MVC

by Alex Wolf

Apr 12, 2016 / 3h 49m

Intermediate • 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
    1m 45s
  2. Putting Web Forms and MVC in Perspective
    21m 5s
  3. Request Management
    40m 25s
  4. Designing with Layouts and Views
    33m 28s
  5. Working with Forms
    24m 44s
  6. Implementing Data Validation
    26m 6s
  7. Understanding Partial Views and Child Actions
    25m 55s
  8. Enhancing the Application with Ajax
    22m 24s
  9. Working with Data
    33m 35s

Improving Your MVC Applications with 10 Extension Points

by Alex Wolf

Nov 10, 2015 / 3h 8m

Intermediate • 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
    12m 6s
  2. Improving Application Responses with Custom Action Results
    25m 2s
  3. Organizing Application Flow with Action Filters
    22m 43s
  4. Keeping Your Razor Code Clean with HTML Helpers
    16m 4s
  5. Enabling Theme Support with a Custom View Engine
    17m 54s
  6. Improving Error Handling with Custom Exception Filters
    16m 33s
  7. Extending Validation to Improve Data Integrity
    19m 9s
  8. Extending Data Binding with Custom Model Binders
    12m 55s
  9. Improving Data Availability with Custom Value Providers
    12m 40s
  10. Customizing Security Using Authentication Filters
    13m 57s
  11. Influencing Action Method Execution Using Custom Selectors
    19m 18s

Consolidating MVC Views Using Single Page Techniques

by Paul Sheriff

Oct 9, 2015 / 2h 29m

Intermediate • 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
    5m 47s
  2. List and Search Data Using MVVM, MVC5, and Bootstrap
    43m 30s
  3. Add and Validate Data with Data Annotations, MVVM, and MVC 5
    46m 53s
  4. Modify & Delete Data Using Hidden Fields and Data Dash Attributes
    25m 35s
  5. Reusability Using a View Model Base Class
    27m 48s


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


Domain-Driven Design Fundamentals

by Julie Lerman, Steve Smith

Jun 25, 2014 / 4h 16m

Intermediate • 4h 16m

Start Course

Hello, and welcome to Domain-Driven Design Fundamentals, part of the ASP.NET MVC 5 Learning Path here at Pluralsight. Your authors, Steve Smith and Julie Lerman, are looking forward to helping you learn the fundamentals of Domain-Driven Design (DDD) through a demonstration of customer interactions and a complex demo application. Along the way, you’ll learn about elements of a domain model, aggregates in Domain-Driven Design, and repositories. You’ll also get hands on modeling problems, and learn about technical components of DDD, and how to manage complexity. So if you’re ready to get started, Domain-Driven Design Fundamentals is waiting for you. Thanks again for visiting us here at Pluralsight!

Table of contents
  1. Introducing DDD
    24m 19s
  2. DDD: Modeling Problems in Software
    45m 6s
  3. Elements of a Domain Model
    1h 1m 5s
  4. Aggregates in Domain-Driven Design
    24m 44s
  5. Repositories
    27m 51s
  6. Domain Events and Anti-corruption Layers
    35m 53s
  7. Reaping the Benefits of Domain-Driven Design
    37m 30s

Domain-Driven Design in Practice

by Vladimir Khorikov

Jan 21, 2016 / 4h 19m

Intermediate • 4h 19m

Start Course

While Domain-Driven Design offers invaluable insights regarding developing enterprise-level software projects, it is often unclear how to apply them in practice. In this course, we'll go through the whole process of building an application from the very beginning using the DDD principles.

Table of contents
  1. Introduction
    29m 31s
  2. Starting with the First Bounded Context
    46m 18s
  3. Introducing UI and Persistence Layers
    33m 20s
  4. Extending the Bounded Context with Aggregates
    35m 57s
  5. Introducing Repositories
    20m 53s
  6. Introducing the Second Bounded Context
    33m 53s
  7. Working with Domain Events
    39m 39s
  8. Looking Forward to Further Enhancements
    20m 6s

Build Your Own Application Framework with ASP.NET MVC 5

by Matt Honeycutt

Mar 13, 2014 / 3h 25m

Intermediate • 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?"
    14m 45s
  2. The Power of an Inversion of Control Container
    1h 1m 51s
  3. Optimize Your Controller Layer
    42m 3s
  4. Optimize Your View Layer
    43m 13s
  5. Optimize Your JavaScript
    43m 57s

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

Register for FREE. Get your Pluralsight IQ.

You’ll get unlimited access to adaptive skill assessments that help you validate your skills in as little as 5 minutes, and you'll get to see the Pluralsight platform first-hand.

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 activating this benefit, you agree to abide by Pluralsight's terms of use and privacy policy.

I agree, activate benefit