In this course, students will learn to develop advanced ASP.NET MVC and Web Forms applications using .NET Framework 4 tools and technologies. The focus will be on coding activities that enhance the performance and scalability of the Web site application. ASP.NET MVC will be introduced and compared with Web Forms so that students know when each should/could be used. This will also prepare the student for exam 70-515.
Module 1: Overview of Web Application Design
This module describes the underlying architecture and design of a Web application
Lessons
- Overview of IIS 7.0
- Overview of ASP.NET 4.0
- Introduction to the MVC Framework
- Overview of the Request Life Cycle
- Lab : Exploring the Adventure Works Web Site
- Exercise 1: Explore the Adventure Works Web Site
- Exercise 2: Comparing Web Forms and MVC
- Exercise 3: Working with the Web Forms Page Life Cycle
Module 2: Designing a Web Application
This module describes the best practices and trade-offs that you need to make when designing a Web application.
Lessons
- Web Applications: Case Studies
- Web Application Design Essentials
- Guidelines for Determining When to Use Web Forms and MVC
Visual Studio 2010
- Tools and Technologies for Web Application Design
- Lab : Redesigning the Adventure Works Web site
- Exercise 1: Reviewing the Adventure Works Web site
- Exercise 2: Redesigning the Adventure Works Web site
- Exercise 3: Adding MVC Capabilities to the Adventure Works Web site
Module 3: Developing MVC Models
This module describes the MVC development model (Models, Controllers, and Views) and how to create the Models that are used to access and modify the data in a data source.
Lessons
- Exploring Ways to Create MVC Models
- Creating a Data Repository
- Lab : Developing MVC Models
- Exercise 1: Exploring Ways to Create MVC Models
- Exercise 2: Creating Data Repository
Module 4: Developing MVC Controllers
This module describes how to create the Controllers that are used to respond to communications from the user and how to implement the application flow and logic.
Lessons
-
Implementing MVC Controllers
- Creating Action Methods
- Lab : Developing MVC Controllers
- Exercise 1: Creating an MVC Controller
- Exercise 2: Adding Code to List the Blog Entries
- Exercise 3: Adding Code to Create a New Blog Entry
- Exercise 4: Adding Code to Edit a Blog Entry
- Exercise 5: Adding Code to Delete a Blog Entry
Module 5: Developing MVC Views
This module describes how to create the Views that are used to expose the application UI. The module also covers how to manage pre-action and post-action behavior of Controller action methods using the included action filters are provided as part of MVC
Lessons
- Implementing MVC Views
- Implementing Strongly-Typed MVC Views
- Implementing Partial MVC Views
- Lab : Developing MVC Views
- Exercise 1: Develop a List MVC View
- Exercise 2: Develop a Details MVC View
- Exercise 3: Develop a Create MVC View
- Exercise 4: Develop an Edit MVC View
- Exercise 5: Develop a Delete MVC View
Module 6: Designing for Discoverability
This module describes how to implement the navigational design and also how discoverability will be achieved through content keywords and page URLs.
Lessons
- Overview of Search Engine Optimization
- Creating the Robots and Sitemap Files
Using ASP.NET Routing
- Lab : Designing for Discoverability
- Exercise 1: Mapping URLs of Web Forms Pages
- Exercise 2: Creating a Sitemap File
- Exercise 3: Building the Application Infrastructure
Module 7: Writing Server-Side Code for Web Forms
This module describes the advanced features of server-side coding and technologies. The module describes how to allow the website to move into a global and web farm environment through localization, shared sessions, and custom user controls. The module will also cover how to use the custom validator and regular expressions.
Lessons
- Overview of the Structure of a Web Application
- Controlling ViewState
Localizing a Web Application
- Persisting Data on a Web Forms Page
- Validating User Input
- Lab : Writing Server-Side Code for Web Forms
- Exercise 1: Modifying a Web Forms Page to Display Localized Content
- Exercise 2: Persisting data on a Web Forms Page
- Exercise 3: Exploring Viewstate
- Exercise 4: Adding Validation to Web Forms Pages
Module 8: Optimizing Data Management for Web Forms
This module describes how to optimize and display data management tasks for a Web Forms-based application using Dynamic Data, Data Binding, LinqToEntities, server side controls, and server-side code.
Lessons
- Managing Data by Using LINQ to Entities
- Using Data Source Controls
- Using ASP.NET Dynamic Data
- Lab : Optimizing Data Management for Web Forms
- Exercise 1: Managing Data by Using LINQ to Entities
- Exercise 2: Customizing the GridView
- Exercise 3: Using ListView, DetailsView | Charts
- Exercise 4: Managing Data by Using ASP.NET Dynamic Data
Module 9: Ensuring Quality by Debugging, Unit Testing, and Refactoring
This module describes how to perform check-in testing for their Web Forms and MVC applications as well as how to use the built-in debugging capabilities of VS2010.
Lessons
-
Debugging and Refactoring Code
Unit
- Testing Code
- Processing Unhandled Exceptions
- Test Driven Development
- Lab : Debugging, Unit Testing and Refactoring
- Exercise 1: Configuring Error Handling
- Exercise 2: Debugging Code
- Exercise 3: Logging
- Exercise 4: Creating Unit Tests
- Exercise 5: Implementing the Test-First Development Methodology
Module 10: Securing a Web Application
This module describes how to mitigate common security threats and to implement the essentials (must haves) of Web security in both MVC and Web Forms applications.
Lessons
- Configuring Authentication
- Configuring ASP.NET Membership
- Managing Authorization by Using ASP.NET Roles
- Lab : Securing a Web Application
- Exercise 1: Configuring ASP.NET Membership and Roles
- Exercise 2: Authentication
- Exercise 3: Authorization
Module 11: Applying Master Pages and CSS
This module describes how to achieve a consistent UI in a reusable manner.
Lessons
- Applying Master Pages
- Applying CSS, Skins, and Themes
- Lab : Applying Master Pages and CSS
- Exercise 1: Modify a Master Page
- Exercise 2: Create Nested Master Page
- Exercise 3: Integrating a Master Page
- Exercise 4: Control Skins
- Exercise 5: Applying Styles | Themes
Module 12: Developing Client Side Scripts and Services
This module described how to develop client-side scripts and services for a responsive, rich, and interactive application UI.
Lessons
- Developing Client-Side Scripts
- Implementing AJAX
Creating Services
- Lab : Developing Client Side Scripts and Services
- Exercise 1: Creating Client-Side Script
- Exercise 2: Advanced JQuery
- Exercise 3: Creating a WCF Service
Module 13: Implementing Advanced AJAX in a Web Application
This module describes the programmatic side of AJAX enabled controls (as well as extending server controls to include AJAX functionality) on a Web Forms page as well as implementing AJAX on a MVC page
Lessons
- Implementing Ajax in ASP.NET MVC Pages
- Using Microsoft Ajax
- Implementing Ajax in ASP.NET MVC Pages
- Using jQuery
- Working With jQuery and Ajax Events
- Lab : Implementing Advanced Ajax for the AdventureWorks web application
- Exercise 1: Using AJAX in an MVC Page Scenario
- Exercise 2: Using jQuery in an MVC Page
- Exercise 3: Handling jQuery Ajax Events
Module 14: Deploying a Web Application
This module describes how to plan, configure, and perform deployment tasks associated with a production Web site. The module also describes the Web site lifecycle as it pertains to deployment.
Lessons
- Overview of Web Application Deployments
- Overview of Web Site Deployments
- Deploying AdventureWorks
- Lab : Deploying AdventureWorks
- Exercise 1: Deploying a Web Application Project Using One-Click Publish
- Exercise 2: Deploying a Web Application Using a Web Deployment Package
- Exercise 3: Deploying a Web Site with the Copy Web Site Tool
- Exercise 4: Deploying a Web Site with the Publish Web Site Utility
Module 15: Developing a Web Application by Using Silverlight
This module introduce students to Silverlight by having them integrate a Silverlight module into an existing ASP.NET application. Students will learn how to add a Silverlight project to an existing solution, leverage the existing Web application by calling a WCF service, and display the information in Silverlight.
Lessons
-
Introduction to Rich Internet Applications
- Overview of Silverlight
- Creating a Silverlight Application
- Lab : Developing a Web Application by Using Silverlight
- Exercise 1: Creating a Silverlight Project
- Exercise 2: Creating a Silverlight WCF Service
- Exercise 3: Displaying Data by Using Silverlight Controls
MLT Course Outline (PDF 239MB)
After completing this course, students will be able to: Describe the underlying architecture and design of a Web application. Apply best practices and make appropriate trade-offs based on business requirements when designing a Web application. Develop MVC models. Develop MVC controllers. Develop MVC views. Optimize the design of a Web application for discoverability by search engines. Write server-side code for Web Forms. Optimize data management for Web Forms. Ensure quality by debugging, unit testing, and refactoring. Secure a Web application. Apply Master Pages and CSS for a consistent application UI. Develop client-side scripts and services for a responsive, rich, and interactive UI. Implement advanced AJAX in a Web application. Deploy a Web application. Develop a Web application by using Silverlight.

