ASP.NET MVC Programming

ASP.NET MVC Programming


This course will interest experienced application developers or architects responsible for Web applications in a Microsoft environment.


Good working knowledge of C# and the .NET Framework is necessary for attending this course. A basic knowledge of ASP.NET is advantageous but not essential.


5 days. Hands on.

Course Objectives

MVC Web applications offer a clean separation of concerns between the business-logic classes, Web pages, and the controller. Microsoft ASP.NET MVC 5 offers Web developers all the benefits of MVC allied with all the power of the .NET platform. This course provides full coverage of ASP.NET MVC 5.1, including Bootstrap, Web API and attribute routing, and the mobile UI API.

After completing this course, delegates will be able to:

  • Understand MVC architecture principles and benefits
  • Implementing industrial-strength MVC solutions
  • Creating views, partial views, and layouts using Razor
  • Testing an MVC application
  • Defining custom routes
  • Using Ajax effectively
  • Creating RESTful services using Web API
  • Creating mobile sites

Course Content

Getting Started with ASP.NET MVC

ASP.NET MVC Project Templates
What's new in ASP.NET 5 and 5.1
Understanding the structure of an ASP.NET MVC project
Naming conventions
Creating views
Defining controllers
Defining a data model
Creating a Complete ASP.NET MVC Application

Creating Strongly-Typed Views
Understanding URLs and action methods
Using HTML helpers
Handling form post-backs
Data validation
Using the Razor View Engine

Razor Design Goals
Implementing a Razor view
Razor syntax
Accessing model data in Razor views
Industrial-Strength ASP.NET MVC Applications

ASP.NET Application Architecture Best Practices
Implementing a repository and Entity Framework data model
Using Dependency Injection
Implementing a custom controller factory
Test Driven Development with ASP.NET MVC

Recap of TDD
Unit Testing frameworks
Walk-through of using TDD with ASP.NET MVC
View Techniques

Defining and Using Custom HTML Helpers
Defining a layout/master page
Using styles
Defining and using partial views
Razor helper method syntax
Implementing Navigation

Defining View-Model Classes
Implementing data filtering in a controller
Understanding the routing mechanism
Adding custom entries to a route table
Defining defaults, parameters, and validation
Generating URLs and hyperlinks
Custom route constraints
State Management

Using Hidden Fields
Session and application state
Custom model bindings
Additional Techniques

View Scaffold Templates
Controller scaffold templates
Global filters
Model binding
Asynchronous controllers
Using Ajax and jQuery with ASP.NET MVC

Overview of Ajax and ASP.NET MVC
Unobtrusive Ajax and the 'this' context
Using Ajax action links
Overview of jQuery
jQuery techniques
Using the ASP.NET Web API

Overview of the ASP.NET Web API
Building servers and clients
Content negotiation
Queryable interfaces
Dependency Injection
Attribute routing
Creating Mobile Sites

Overview of jQuery Mobile
Creating a mobile user interface
Managing data
Implementing UI behaviour
Overview of Bootstrap
Adaptive rendering

Virtual Courses

ALL of our courses can be delivered virtually. And our Bath public schedule of courses are now available as live virtual sessions, using the popular Zoom Virtual Classroom and remote labs. Delegates can test their access at:

Public Courses

On-Site Courses

Can't attend one of our public classes? Booking for multiple people?

All our courses are available on your site! Delivered for your staff, at your premises.

Contact us to find out more...