All HOTT courses are available face-to-face, remote-live, on-demand or on site at your facility. This course provides students with hands on experience using Visual Studio to create dynamic web applications using ASP.NET MVC and C#. 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 ASMX 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 will 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.
This course provides thorough coverage of the use of ASP.NET MVC for creation of web applications. Students requiring additional coverage of ASP.NET Web Forms, Windows Forms, WCF or Windows Presentation Foundation should contact HOTT or refer to HOTT's complete course listing for additional training courses.
Students who are not familiar with the C# language should take the 5-day ASP.NET MVC Programming Using C# course instead.
Students Will Learn:
- Architecture of ASP.NET MVC web applications
- Using Visual Studio to create Internet and Intranet applications
- Creating controllers containing action methods to process HTTP requests
- Using both the ASPX and Razor view engines to design ASP.NET MVC views to render responses to HTTP requests
- Creating data models by hand, by using typed datasets, and by using the Entity Framework
- Creating and debugging ASP.NET MVC routines
- Using MS Test and NUnit to create and run tests for ASP.NET MVC applications
- Integrating ASP.NET Web Forms and ASP.NET MVC within one web application
- Securing and deploying ASP.NET MVC web applications
- Course materials include student guide, hands-on lab manual and USB flash drive for examples and lab work
- Students receive a certificate of completion at the end of class
- After completion of a course, students can retake any portion of that class within 12 months at no extra cost
- There are no registration fees or cancellation fees
|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
- Creating Controllers
- Defining Action Methods
- Mapping URLs to Action Methods
- Understanding ActionResult Types
- Working with ViewData and ViewBag
- 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
- Creating Model Classes
- Working with the Entity Framework
- Working with LINQ to SQL
- Using Scaffolding
- 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
Knowledge of fundamental HTML syntax is helpful, but not required. Prior experience with C# is required.
50% of the class is focused on hands-on lab exercises.
Course materials include student guide, hands-on lab manual and USB flash drive for examples and lab work.
Students receive a certificate of completion at the end of class.
Students can retake any portion of a class that has been completed, within 12 months at no extra cost.