Building Effective Websites using Microsoft MVC

5 Day Course
Hands On

Book Now - 3 Delivery Methods Available:

Classroom Virtual Classroom Private Group - Virtual Self-Paced Online


The course takes existing .NET developers and provides them with the necessary skills to develop modern MVC-5 web-based applications, using Visual Studio 2015 and the ASP.NET Framework 4.51 (using the Repository and Unit Of Work Patterns). This course prepares delegates for Exam 70-486.

Training Partners

We work with the following best of breed training partners using our bulk buying power to bring you a wider range of dates, locations and prices.


Hide all

Web Basics (1 topic)

  • This is a 'refresh' chapter for those not confident with web terminology. It is brief and only intended as a refresh - not a 'learn from cold'. There is no lab.

MVC5 Overview (7 topics)

  • The MVC Pattern
  • The MVC Pattern
  • Models, Views, and Controllers ASP.NET MVC Conventions MVC5 Project structure
  • Visual Studio 2015 support
  • Nuget
  • Creating an ASP.NET MVC 5 project using Visual Studio 2015 After completing this module delegates will:
  • Have gained a high-level overview of how to build an MVC-5 application

Entity Framework (10 topics)

  • The main features of Entity Framework
  • DatabaseFirst / ModelFirst / CodeFirst / CodeFirst from Database
  • Lazy / Eager / Explicit loading
  • Linq To Entities
  • Initialization and Migration
  • Using Stored Procs
  • CodeFirst and loading options
  • (Optional) Initialization and Migration
  • Know the different strategies available in Entity Framework
  • Know how and when to use Initialization and Migration

The Data Storage Pattern (7 topics)

  • The Repository Pattern
  • The Unit of Work Pattern
  • The Dependency Injection Pattern
  • The Model (correctly known as the ViewModel)
  • How Entity Framework fits in
  • The Structure
  • Labs: Create Repository, Unit of Work structures using Dependency Injection and Entity Framework.

Controllers and Actions (5 topics)

  • What is a controller? Action and parameters
  • Returning Results from Actions Passing data to views Asynchronous Actions Processing HTTP Forms
  • Building controller classes
  • Understand the role of the controller
  • Be able to write Actions to process requests

Unit Test (8 topics)

  • Test Driven Development (TDD)
  • Writing tests in Visual Studio
  • Mocking the HttpContext
  • Implement Test Driven Development
  • After completing this module delegates will:
  • Understand the principles of Test Driven Development (TDD)
  • Know how to implement Unit Tests using Visual Studio
  • Know how to use a mocking framework

Creating Views (6 topics)

  • Using views and partial views Razor
  • Layout pages Using data in views
  • Strongly Typed Views
  • Implementing views and partial views After completing this module delegates will:
  • Be able to use the Razor engine to render views and partial views. Create master layout pages for a consistent look and feel.
  • Use Helper methods to generate client side mark-up. Know how to access model data from within Views

Bootstrap (4 topics)

  • Bootstrap getting started Bundling and Minification Bootstraps responsive design Bootstrap components Lab:
  • Styling webpages with Bootstrap
  • Know how to use the Bootstrap UI Framework
  • Be able to create mobile-first responsive web pages

Model Binding (1 topic)

  • Model Binding Lab

Validation (2 topics)

  • Data Annotations and Validation Attributes Preventing JavaScript Injection attacks
  • Lab: Model Validation

Error Handling (5 topics)

  • Error handling
  • Exception bubbling
  • The default error page
  • Error filters
  • Lab: Error handling

Action filters (3 topics)

  • What are Action Filters? Types of Action Filter Using Action Filters
  • Creating Custom Action Filters Adding global filters
  • Lab: Using Action Filters

Routing (6 topics)

  • What are routes? Defining and using routes
  • Convention-based Routing Attribute-based Routing Debugging routes Lab:
  • Configuring and de-bugging routes
  • Understand the purpose of routes.
  • Know how to add literals and constraints to routes. Know the benefit of Areas.
  • Be able to use Glimpse to de-bug routes.

Web API 2 (7 topics)

  • WCF v. Web API2
  • The HTTP Protocol Content negotiation Web API2 Controllers Routing
  • Error handling Lab:
  • Creating and calling Web API Services
  • Understand the Web API framework
  • Learn about the HTTP requests and responses Know how to create a Web API
  • Be able to consume a Web API from a variety of devices

State (3 topics)

  • State management
  • Maintaining state between requests Maintaining state across all requests Maintaining state between user sessions
  • Lab: Managing and maintaining state

Caching (3 topics)

  • Output caching
  • Data caching Lab:
  • Output and Data caching

AJAX (4 topics)

  • What is AJAX
  • AJAX Frameworks ASP.NET AJAX jQuery
  • Visual Studio support
  • Enhancing an MVC application with AJAX

Security (9 topics)

  • ASP.NET Identity Authorization
  • Individual User Accounts
  • Organizational Accounts (aka Work and School Accounts)
  • A number of labs are provided (most of them optional) so delegates can become familiar with the available options.
  • Add avatar to user
  • Email confirmation of registration
  • Password recovery
  • Authorization by role
  • Two factor authentication

Deploying (8 topics)

  • Deployment Options
  • Working with Packages Configuring Deployment Options Applying Transforms Lab:
  • Deploying Web Applications to Azure Lab:
  • Change to the Entity Framework migration strategy
  • Deploy to IIS
  • Deploy to Azure (for those with an Azure account)
  • Know how to deploy ASP.NET MVC 5 applications to hosting servers and Microsoft's Azure
  • How to create and configure deployment profiles

Appendix: OWIN, Katana and SignalR (4 topics)

  • OWIN, Katana and middleware
  • SignalR overview
  • Adding real-time functionality to a web application After completing this module delegate will:
  • Know how to add real-time capabilities to a web application using the SignalR APIs


  • Delegates should have basic knowledge of HTML and web page creation using JavaScript and CSS. These skills can be obtained by attending the 'Building an Effective Web Site' course
  • Delegates should have existing knowledge of C#4 (ie LINQ/Lambdas) and have worked with the .NET Framework for 3 months minimum. (VB.NET delegates should be comfortable reading C#).
  • Delegates without these skills would benefit from attending the 'C# programming language' course.
  • Delegates are not required to have any experience in ASP.NET WebForms development.

Please note: Before attending this class delegates must have a Microsoft account (signing up one is free). The instructions on how to set up a Microsoft account can be found here.

Relevant Certifications

Scheduled Dates

Please select from the dates below to make an enquiry or booking.


Different pricing structures are available including special offers. These include early bird, late availability, multi-place, corporate volume and self-funding rates. Please arrange a discussion with a training advisor to discover your most cost effective option.

Code Location Duration Price May Jun Jul Aug Sep Oct
Virtual Classroom (Virtual On-Line)
5 Days $5,440

Course PDF


Share this Course


Recommend this Course