For more information and to register for classes contact ISONET Education Services 15th Floor RS Tower, 121/56 Ratchadapisek Rd., Dindaeng, Bangkok 10320
Tel: (662) 641-2200-8 Fax: (662) 641-2199 Email: [email protected]
Advanced Web Application Development using Microsoft
ASP.NET
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.
Audience
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.
At Course Completion
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.
Key Data
Course #: 2311A Number of Days: 3 Format: Instructor-Led Certification Exams:
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
ASP.NET
Prerequisites
Before attending this course, students must meet 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
Student Materials
ASP.NET
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.
Lessons
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.
Lessons
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.
ASP.NET
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.
Lessons
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.
Lessons
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.
ASP.NET
Module 5: Using Graphics Classes to Generate Images
This module describes how to use the System.Drawing classes to generate images in ASP.NET.
Lessons
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.
Lessons
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.
Lessons
Effective Caching Strategies Managing Session Data Client-side Caching Options
Lab: Caching in the Portal Application
Caching Site Configuration Caching Dynamic Controls
ASP.NET
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.
Lessons
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.
Lessons
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.
ASP.NET
Module 10: ASP.NET Configuration
This module explains and illustrates important issues in managing ASP.NET configuration, including using configuration handlers.
Lessons
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.
Lessons
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.