M2311 – Visual Studio Advanced Web Application Development using Microsoft ASP.NET

Enquire/Book this course

  • This field is for validation purposes and should be left unchanged.
Print this page
  • Code: M2311
  • Duration: Days 3
  • Price per delegate: £750.00 +VAT

Trained over 60000 delegates

Course delivered by industry expert instructors

Highly competitive pricing


Course Description
This three-day, instructor-led course provides students with the knowledge and skills that are needed to successfully design and implement Web applications using Microsoft ASP.NET. This course assumes student exposure to the new features of ASP.NET that can be leveraged for Web applications matching corporate requirements.
Microsoft Certification exams
This course will help the student prepare for the following Microsoft Certified Professional exam:
Exam 70-305: Developing and Implementing Web Applications with Microsoft Visual Basic .NET and Microsoft Visual Studio .NET
Exam 70-315: Developing and Implementing Web Applications with Microsoft Visual C# .NET and Microsoft Visual Studio .NET
Course Materials
The student kit includes a comprehensive workbook and other necessary materials for this class.

Target Student: This course is intended for existing ASP.NET developers who are writing solutions using Microsoft ASP.NET. This course assumes that the students are familiar with Hypertext Markup Language (HTML), client-side and server-side scripting, ASP.NET, Microsoft ActiveX Data Objects for .NET (ADO.NET), and a Microsoft .NET-based programming language.
The Web developer is responsible for the design and implementation of a Web application and/or a Web solution. Typically, these individuals perform the following functions:
  • Assist with the creation of functional specifications.
  • Design and develop user interfaces (UIs).
  • Create ASP.NET Pages.
  • Write Web Forms applications.
  • Create and test prototypes.

Prerequisites: Before attending this course, students must have:
  • Ability to create HTML pages with tables, images, and forms.
  • Experience using a scripting language, such as Microsoft Visual Basic Scripting Edition or JavaScript.
  • Experience using ASP.NET to create Web applications.
  • Ability to retrieve data from relational databases by using ADO.NET.
  • Familiarity with a .NET-based programming language.
In addition, it is recommended, but not required, that students have completed:
  • Course 2310: Developing Microsoft ASP.NET Web Applications Using Visual Studio .NET
  • Course 2640: Upgrading Web Development Skills to Microsoft ASP.NET
Delivery Method: Instructor led, group-paced, classroom-delivery learning model with structured hands-on activities.
Performance-Based Objectives
After completing this module, students will be able to:
  • Create a Web application architecture that is maintainable and extensible.
  • Describe the elements of a well-designed portal application using ASP.NET.
  • Implement best practices for creating data access logic components.
  • Create a well-designed data abstraction layer to maximize code reusability.
  • Tune data-driven Web applications for optimal performance.
  • Customize databinding for maximum scalability and usability.
  • Design and implement an easy-to-administer configuration strategy.
  • Generate custom configuration handlers.
  • Create custom controls to encapsulate user interface.
  • Use best practices for interoperating with COM components.
  • Implement caching techniques to improve Web application performance.
  • Design reusable Web presentation patterns using object-oriented techniques.
  • Use GDI+ classes to create interactive graphics.
  • Use DataGrids for advanced reporting techniques.
  • Apply best practices for debugging and exception handling.
  • Use Application Center Test for stress testing Web applications.
  • Create a flexible security infrastructure.
  • Implement encryption classes to secure communication.
  • Build an administrative interface for a portal application.
  • Use object-oriented techniques to build an extensible modular design.
Course Content
Module 1: Considerations for Building Advanced ASP.NET Applications
This module presents a framework for developing Web applications and describes the application that students will construct during class.
  • Building Enterprise Web Applications With ASP.NET
  • Presentation Layer
  • Data Access Layer
  • Business Logic Layer
Lab : Understanding Application Structure
  • Examining the Structure of the Applications
  • Building Utility Controls
After completing this module, students will be able to:
  • Describe an application architecture that is easy to maintain and extend.
  • Explain the use of the object-oriented features of .NET in constructing a portal application.
  • Describe the data access and storage architecture of the application.
  • Explain application configuration settings and the tradeoffs involved in creating a configuration strategy.
Module 2: Designing Data Tier Components
This module explains best practices for creating the data tier of a Web application. The concept of data abstraction is introduced and illustrated with specific implementations recommended by Microsoft and incorporated into the class application.
  • Implementing Data Access Logic Components
  • Designing a Data Abstraction Layer
  • Performance Tuning for Data Access
  • Managing Settings and Configuration with Typed DataSets
  • Best Practices for Reliable Data Access
Lab : Using Data Access Components
  • Using Data Access Components for Databinding
  • Creating Collection Classes for Data Display
After completing this module, students will be able to:
  • Define business entities and describe how they are used in Web applications.
  • Design effective data access components.
  • Explain the design decisions for creating business entity components, including representing entity data.
Module 3: Web Presentation Patterns
This module introduces the concept of design patterns and demonstrates how to use them effectively in creating an extensible Web presentation infrastructure.
  • Using Design Patterns in Web Applications
  • Creating Dynamic Interfaces with User Controls
  • Using Inheritance to Define Basic Site Functionality
  • Using Collection Classes for DataBinding
  • Properties and Elements of the DataGrid
  • Optimal Data Paging for DataGrids
  • DataGrid Editing Techniques
  • Creating Master/Detail Views with a DataGrid
Lab : Implementing Databound Presentations
  • Implementing the Defect Class
  • Implementing the Defect Module
  • Creating a Master/Detail Report
After completing this module, students will be able to:
  • Describe design patterns applicable to Web applications.
  • Apply design patterns to create extensible user interfaces.
  • Use collection classes for efficient databinding.
  • Describe the major properties and elements of a DataGrid.
  • Implement optimal data paging techniques.
  • Apply effective DataGrid editing practices.
  • Create efficient Master/Detail Views using DataGrids.
Module 4: Building Custom Controls
This module describes the steps necessary to create custom controls and is illustrated with several examples of practical controls.
  • Architecture of Custom Controls
  • Creating Control Object Models
  • Using Events in Controls
  • Rendering Control Output
  • Creating Data-Bound Custom Controls
Lab : Building Custom Controls
  • Identifying Parts of a Data-Bound Custom Control
  • Implementing a Data-Bound Custom Control
  • Using a Data-Bound Custom Control
After completing this module, students will be able to:
  • Describe the architecture of system controls.
  • Create an object model for a custom control.
  • Raise and use event handlers during control execution.
  • Use rendering methods to create control content.
Module 5: Using Graphics Classes to Generate Images
This module describes how to use the System.Drawing classes to generate images in ASP.NET.
  • Major System.Drawing Classes
  • Methods for Generating Images
  • Using Data to Generate Charts
Lab : Generating Data-Driven Graphics
  • Creating a Graphics object
  • Stream the image to the browser
After completing this module, students will be able to:
  • Describe the major elements of the GDI+ object model.
  • Use the main GDI+ methods for manipulating graphics images.
  • Create an ASP.NET page that creates chart graphics using data objects.
Module 6: Creating a Secure Infrastructure
This module presents alternative ASP.NET security models and illustrates how a flexible and extensible security infrastructure can be created in Web applications.
  • ASP.NET Security Models
  • Role-based Authorization Techniques
  • Process Identity and Accessing Resources
  • Securing Communication with Encryption
Lab : Creating a Security Infrastructure
  • Implementing the ICustomPrincipal Interface
  • Creating Security Classes Customized Authentication Process
  • Identifying User Roles
After completing this module, students will be able to:
  • Identify where and how you need to perform authentication in ASP.NET applications.
  • Implement role-based authorization.
  • Secure resources using process identity.
  • Identify where and how to secure communications using encryption.
Module 7: Caching Patterns and Practices
This module explains how to cache user interface elements and data objects for maximum performance and usability.
  • Effective Caching Strategies
  • Managing Session Data
  • Client-side Caching Options
Lab : Caching in the Portal Application
  • Caching Site Configuration
  • Caching Dynamic Controls
After completing this module, students will be able to:
  • Describe best practices for output caching.
  • Implement a caching strategy for dynamic Web content.
  • Use data caching effectively.
  • Manage Session data for optimal performance.
  • Evaluate client-side caching options.
Module 8: Diagnostics and Exception Handling
This module introduces the best practices for debugging and exception handling. Related concerns including stress testing and applying performance counters are also covered.
  • Exception Handling Strategies
  • Best Practices for Debugging
  • Using Application Center Test for Performance Testing
  • Applying Performance Counters to Profile Web Applications
Lab : Using the Exception Manager
  • Implementing an Exception Handling Framework
  • Creating and Handling a Custom Exception Testing Web Applications with Application Center Test
  • Using Application Center Test to Find Web Server Capacity
After completing this module, students will be able to:
  • Choose appropriate debugging techniques for Web applications.
  • Implement an exception handling framework for logging and diagnostics.
  • Use Application Center Test to stress test Web applications.
  • Identify and apply performance counters for application measurement.
Module 9: Interoperability with COM
This module builds on the materials in the previous module to describe best practices for interoperating between ASP.NET and COM components.
  • Overview of COM Interop
  • Creating and using a Runtime Callable Wrapper
  • Guidelines and Issues in COM Interoperation
Lab : Interoperability with COM
  • Referencing a COM component from an ASP.NET application
After completing this module, students will be able to:
  • Describe why and how to call COM components from .NET.
  • Create and use a Runtime Callable Wrapper.
  • Address common issues and pitfalls when working with COM Interop.
  • Export data into Excel from ASP.NET using COM Interop.
Module 10: ASP.NET Configuration
This module explains and illustrates important issues in managing ASP.NET configuration, including using configuration handlers.
  • Configuration Schema Overview
  • Examples of Built-in Configuration Settings
  • Creating Custom Configuration Settings
  • Encrypting Configuration Settings
  • Using the Configuration Management Application Block
Lab : Configuration Management
  • Creating and Reading Custom Configuration Settings
  • Working with Encrypted Configuration Sections
  • Using Microsoft Configuration Management Application Block
After completing this module, students will be able to:
  • Have an understanding of the .NET configuration handling mechanism.
  • Take advantage of a few built-in ASP.NET configuration settings.
  • Create your own custom configuration sections.
  • Encrypt configuration sections for better security.
  • Utilize a ready-to-use component that abstracts Configurations Management.
Module 11: Administering and Extending the Portal
This module displays the elements of an extensible administration framework for managing a Web application. It also demonstrates how to extend the portal through modular design.
  • Creating Flexible Site Administration Tools
  • Adding Modules to the Portal
Lab : Extending the Portal with New Modules
  • Extending the Data Layer
  • Creating the User Control and Edit Page
After completing this module, students will be able to:
  • Describe the main components of the administrative interface and how they interact.
  • Identify the steps needed to extend the portal by adding new modules.