Contact Us: 978.250.4983
Software Skills Training, Inc.

ASP.NET MVC Programming for Experienced C# Programmers

Attend face-to-face, remote-live or via on-demand training

ASP.NET MVC Programming for Experienced C# Programmers

Duration: 3 Days (Face-to-Face or Remote-Live), or 21 hours of coursework with personal facilitation over a four week span (On-Demand)

US Price: $1695 (Face-to-Face or Remote-Live), or $1495 (On-Demand)

Delivery Options: Attend face-to-face in the classroom, remote-live or via on-demand training

Registration: Click here to view upcoming schedules and register for face-to-face sessions, click here to register for live remote attendance sessions, or click here to register for on-demand training with a start date that is convenient for you.

Schedule View the course schedule

Description

This course provides students with hands on experience using Visual Studio to create dynamic web applications using ASP.NET MVC, C#, and the .NET Frameowrks 4.0 - 4.8. Students should already have a working knowledge of C# .

This course teaches students how to leverage the power of the Model-View-Controller design pattern with the ASP.NET MVC Framework to separate the layers of a web application. Students will use the ASPX and Razor view engines to design a user interface. Students will learn how to build models to manage an application's data layer using both the Entity Framework and LINQ to SQL. Students also learn how to build controllers containing action methods to manage communication between views and models.

Other topics include data scaffolding; URL routing; implementing security; using MVC and Web Forms in the same application; unit testing; and deploying ASP.NET MVC applications. Comprehensive labs provide the students with experience creating, debugging, testing and deploying dynamic ASP.NET MVC applications.

Prerequisites

Knowledge of fundamental HTML syntax is helpful, but not required. Prior experience with C# is required.

Course Overview

Overview of ASP.NET MVC
  • Overview of Model-View-Controller Design Pattern
  • ASP.NET MVC Application Architecture
  • Understanding the MVC Execution Process
  • Building an ASP.NET MVC Application Using Visual Studio
  • Visual Studio MVC Project Templates
  • Using a web.config File
Developing Controllers
  • Creating Controllers
  • Defining Action Methods
  • Mapping URLs to Action Methods
  • Understanding ActionResult Types
  • Working with ViewData and ViewBag
Developing Views
  • Creating Views
  • Understanding View Engines
  • Using the ASMX View Engine
  • Using the Razor View Engines
  • Using HTML Helpers
  • Adding Validation
  • Working with Strongly-Typed Views
Developing Models
  • Creating Model Classes
  • Working with the Entity Framework
  • Working with LINQ to SQL
  • Using Scaffolding
Routing Control
  • Understanding Routing in ASP.NET MVC
  • Defining URL Routes
  • Registering Routes
  • Adding Constraints to Routes
  • Debugging Routes
Integrating ASP.NET MVC and Web Forms
  • What are Web Forms
  • Using Web Forms in an MVC Application
  • Using MVC in a Web Form Application
  • Linking to MVC Actions from Web Forms
MVC Unit Testing
  • Test-Driven Development
  • Designing Test Cases
  • Creating Unit Tests
  • Using MS Test
Securing MVC Applications
  • ASP.NET Security
  • Windows vs Forms Authentication
  • Configuring Authentication
  • Configuring Authorization
  • Building a Secure Web Site
  • Defending against Attacks
    • Cross-site Scripting
    • Session Hijacking
    • SQL Injection
    • Input Forgery
Deploying ASP.NET MVC Applications
  • Understanding Deployment Issues
  • Required MVC Assemblies
  • Server Requirements
  • Configuring an ASP.NET Application for Deployment
  • Using XCOPY Deployment
  • Using WebDeploy

Related Training

Course
ASP.NET MVC Programming Using C#
ASP.NET MVC Programming Using C# and .NET6
ASP.NET MVC Programming for Experienced C# Programmers Using .NET6
Advanced MVC: Building Web Applications Using the ASP.NET Web API with C#

Training Locations

Choose a city below to view a schedule for in-person classes. Courses may also be taken via our Online Remote Attendance and On-Demand training options.