Visual Studio

Advanced Web Application Development using Microsoft ASP.NET
(Microsoft Training Course: 2311) - 3 days - £1700 exc VAT

> Target Audience
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. It is intended for existing ASP.NET developers who are writing solutions using Microsoft ASP.NET.
> Course outline
  1. Considerations for Building Advanced ASP.NET Applications
  2. Designing Data Tier Components
  3. Web Presentation Patterns
  4. Building Custom Controls
  5. Using Graphics Classes to Generate Images
  6. Creating a Secure Infrastructure
  7. Caching Pattens and Practices
  8. Diagnostics and Exception Handling
  9. Interoperability with COM
  10. ASP.NET Configuration
  11. Administering and Extending the Portal

Supplementary InformationThis course was designed for .Net 1.1, and focuses on the use of the Microsoft Enterprise building Blocks to deliver concepts on Optimisation. We consider the new courses delivered for .Net 2.0 and .Net 3.5 to offer a better approach to cover optimisation and advanced web technologies not covered in 2311 (Ajax, registering clientside scripts, etc.) Refer to [[{http://www.F1Comp.Co.UK/computer_training/Microsoft_Training_Courses/Visual-Studio-2005/2544.aspx}2544]], [[{http://www.F1Comp.Co.UK/computer_training/Microsoft_Training_Courses/Visual-Studio-2005/F1025.aspx}F1025]]
Module 1: Considerations for Building Advanced ASP.NET Applications
  • Building Enterprise Web Applications With ASP.NET
  • Presentation Layer
  • Data Access Layer
  • Business Logic Layer
  • Lab: Understanding Application Structure
  • 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
  • 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
  • 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
  • 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
  • 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
  • Architecture of Custom Controls
  • Creating Control Object Models
  • Using Events in Controls
  • Rendering Control Output
  • Creating Data-Bound Custom Controls
  • Lab: Building Custom Controls
  • 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
  • Major System.Drawing Classes
  • Methods for Generating Images
  • Using Data to Generate Charts
  • Lab: Generating Data-Driven Graphics
  • 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
  • ASP.NET Security Models
  • Role-based Authorization Techniques
  • Process Identity and Accessing Resources
  • Securing Communication with Encryption
  • Lab: Creating a Security Infrastructure
  • 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 Pattens and Practices
  • Effective Caching Strategies
  • Managing Session Data
  • Client-side Caching Options
  • Lab: Caching in the Portal Application
  • 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
  • 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
  • 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
  • Overview of COM Interop
  • Creating and using a Runtime Callable Wrapper
  • Guidelines and Issues in COM Interoperation
  • Lab: Interoperability with COM
  • 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
  • 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
  • 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
  • Creating Flexible Site Administration Tools
  • Adding Modules to the Portal
  • Lab: Extending the Portal with New Modules
  • Describe the main components of the administrative interface and how they interact.
  • Identify the steps needed to extend the portal by adding new modules.
> Pre-Requisites
Before attending this course, students must have the following prerequisites:
  • 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
> Purpose
After completing this course, 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.
> Supplementary Information
This course was designed for .Net 1.1, and focuses on the use of the Microsoft Enterprise building Blocks to deliver concepts on Optimisation. We consider the new courses delivered for .Net 2.0 and .Net 3.5 to offer a better approach to cover optimisation and advanced web technologies not covered in 2311 (Ajax, registering clientside scripts, etc.) Refer to [[{http://www.F1Comp.Co.UK/computer_training/Microsoft_Training_Courses/Visual-Studio-2005/2544.aspx}2544]], [[{http://www.F1Comp.Co.UK/computer_training/Microsoft_Training_Courses/Visual-Studio-2005/F1025.aspx}F1025]]