How To Take This Class

Course Overview

In this Microsoft Official Course (MOC), 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.

Course Prerequisites

In addition to their professional Web development experience, students who attend this training should have the following technical knowledge:

  • An understanding of the problem-solving techniques that apply to software development, including the following principles of software development:
  • Modern software development model
  • Typical phases of a software development lifecycle
  • Concepts of event-driven programming
  • Concepts of object-oriented programming
  • Creating use-case diagrams
  • Designing and building a user interface
  • Developing a structured application
  • A basic understanding of the following scripting techniques and some hands-on experience writing scripts:
  • Web scripting techniques
  • Macro scripting techniques
  • Windows scripting techniques
  • A general understanding of the purpose, function, and features of following .NET Framework topics:
  • Common Language Runtime
  • .NET Framework class library
  • Common Type System
  • Component interoperation
  • Cross-Language Interoperability
  • Assemblies in the Common Language Runtime
  • Application Domains
  • Runtime hosts supported by the .NET Framework
  • Experience using Visual Studio 2008 in the following task areas:
  • Declaring and initializing typed variables using the Camel case naming convention
  • Using arithmetic, relational, and logical operators in code statements
  • Using branching statements to control code execution
  • Using looping statements to iterate through collections or repeat steps until a specified condition is met
  • Creating classes and methods to establish the basic structure of an application
  • Using methods and events to implement the programming logic of an application
  • Identifying syntax and logic errors
  • Accessing and managing data from a data source
  • Experience in object oriented design and development as follows:
  • Creating and accessing classes and class properties
  • Creating and accessing methods and overloaded methods
  • Implementing inheritance, base classes, and abstract classes
  • Declaring, raising, and handling events
  • Responding to and throwing exceptions
  • Implementing interfaces and polymorphism
  • Implementing shared and static members
  • Implementing generics
  • Creating components and class libraries
  • Experience in N-Tier application design and development as follows:
  • Managing a software development process
  • Controlling input at the user interface level in Windows Client and Web applications
  • Debugging, tracing, and profiling .NET applications
  • Monitoring and logging .NET applications
  • Implementing basic testing best practices
  • Performing basic Data Access tasks with LINQ
  • Implementing basic security best practices in .NET Applications
  • Implementing basic service calls
  • Using .NET Configuration Files
  • Deploying .NET Framework Applications using ClickOnce and the MS Installer

Course Audience

This course is intended for professional Web developers who use Microsoft Visual Studio in a team-based, medium-sized to large development environment. Members of the audience have a minimum of two to three years of experience developing Web-based applications by using Microsoft Visual Studio and Microsoft ASP.NET. Members of the audience are experienced users of Microsoft Visual Studio 2008 SP1 and newer releases of the Visual Studio product. The audience understands how to use the new features of Visual Studio 2010.

What You'll Learn

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.

Course Duration

5 Days

Course Outline

  1. Overview of Web Application Design
    • 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
      • Explore the Adventure Works Web Site
      • Comparing Web Forms and MVC
      • Working with the Web Forms Page Life Cycle
  2. Designing a Web Application
    • 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
      • Reviewing the Adventure Works Web site
      • Redesigning the Adventure Works Web site
      • Adding MVC Capabilities to the Adventure Works Web site
  3. Developing MVC Models
    • Exploring Ways to Create MVC Models
    • Creating a Data Repository
    • Lab: Developing MVC Models
      • Exploring Ways to Create MVC Models
      • Creating Data Repository
  4. Developing MVC Controllers
    • Implementing MVC Controllers
    • Creating Action Methods
    • Lab: Developing MVC Controllers
      • Creating an MVC Controller
      • Adding Code to List the Blog Entries
      • Adding Code to Create a New Blog Entry
      • Adding Code to Edit a Blog Entry
      • Adding Code to Delete a Blog Entry
  5. Developing MVC Views
    • Implementing MVC Views
    • Implementing Strongly-Typed MVC Views
    • Implementing Partial MVC Views
    • Lab: Developing MVC Views
      • Develop a List MVC View
      • Develop a Details MVC View
      • Develop a Create MVC View
      • Develop an Edit MVC View
      • Develop a Delete MVC View
  6. Designing for Discoverability
    • Overview of Search Engine Optimization
    • Creating the Robots and Sitemap Files
    • Using ASP.NET Routing
    • Lab: Designing for Discoverability
      • Mapping URLs of Web Forms Pages
      • Creating a Sitemap File
      • Building the Application Infrastructure
  7. Writing Server-Side Code for Web Forms
    • 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
      • Modifying a Web Forms Page to Display Localized Content
      • Persisting data on a Web Forms Page
      • Exploring Viewstate
      • Adding Validation to Web Forms Pages
  8. Optimizing Data Management for Web Forms
    • Managing Data by Using LINQ to Entities
    • Using Data Source Controls
    • Using ASP.NET Dynamic Data
    • Lab: Optimizing Data Management for Web Forms
      • Managing Data by Using LINQ to Entities
      • Customizing the GridView
      • Using ListView, DetailsView | Charts
      • Managing Data by Using ASP.NET Dynamic Data
  9. Ensuring Quality by Debugging, Unit Testing, and Refactoring
    • Debugging and Refactoring Code
    • Unit Testing Code
    • Processing Unhandled Exceptions
    • Test Driven Development
    • Lab: Debugging, Unit Testing and Refactoring
      • Configuring Error Handling
      • Debugging Code
      • Logging
      • Creating Unit Tests
      • Implementing the Test-First Development Methodology
  10. Securing a Web Application
    • Configuring Authentication
    • Configuring ASP.NET Membership
    • Managing Authorization by Using ASP.NET Roles
    • Lab: Securing a Web Application
      • Configuring ASP.NET Membership and Roles
      • Authentication
      • Authorization
  11. Applying Master Pages and CSS
    • Applying Master Pages
    • Applying CSS, Skins, and Themes
    • Lab: Applying Master Pages and CSS
      • Modify a Master Page
      • Create Nested Master Page
      • Integrating a Master Page
      • Control Skins
      • Applying Styles | Themes
  12. Developing Client Side Scripts and Services
    • Developing Client-Side Scripts
    • Implementing AJAX
    • Creating Services
    • Lab: Developing Client Side Scripts and Services
      • Creating Client-Side Script
      • Advanced JQuery
      • Creating a WCF Service
  13. Implementing Advanced AJAX in a Web Application
    • 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
      • Using AJAX in an MVC Page Scenario
      • Using jQuery in an MVC Page
      • Handling jQuery Ajax Events
  14. Deploying a Web Application
    • Overview of Web Application Deployments
    • Overview of Web Site Deployments
    • Deploying AdventureWorks
    • Lab: Deploying AdventureWorks
      • Deploying a Web Application Project Using One-Click Publish
      • Deploying a Web Application Using a Web Deployment Package
      • Deploying a Web Site with the Copy Web Site Tool
      • Deploying a Web Site with the Publish Web Site Utility
  15. Developing a Web Application by Using Silverlight
    • Introduction to Rich Internet Applications
    • Overview of Silverlight
    • Creating a Silverlight Application
    • Lab: Developing a Web Application by Using Silverlight
      • Creating a Silverlight Project
      • Creating a Silverlight WCF Service
      • Displaying Data by Using Silverlight Controls

What Students Receive

Each student will receive:
  • A printed courseware manual with hands-on exercises and samples for use during and after class.
  • A PC headset for communicating with your instructor and fellow students during your training class
  • A course completion certificate upon successful completion of your training course
  • Six months of post-class email support from a Visual Studio 2010 Instructor