Ajax Development with ASP.NET 2.0 Course No. ISI-1071 3 Days Instructor-led, Hands-on Introduction This three-day intensive course introduces a fast-track path to understanding the ASP.NET implementation of Ajax (formerly code named ATLAS) and how this technology can increase the power and functionality of your code while conserving time and effort. Microsoft Ajax is a web-client framework that makes building asynchronous client side applications easier. It provides a prewritten framework that gives you a structured environment in which to work. Ajax for ASP.NET also provides you with an object model and standardized debugging to make development faster and simpler. Ajax is a new way of combining a number of Web technologies including JavaScript, dynamic HTML, and a feature known as XmlHttp (which reduces the need for client browsers to constantly reconnect to the server every time new information is downloaded). But at the moment, people developing with Ajax have to write their code from the ground up, which is complex and time consuming. The course guides you through a series of practical examples that demonstrate the Microsoft Ajax framework and available controls. After taking this course, you'll be able to compile a seamless Ajax-based application of your own! At Course Completion After completing this course, students will be able to: Describe the Development of Next-Generation Web Applications Understand Partial Page Updates Work with JavaScript for the ASP.NET Developer Understand the ASP.NET AJAX Client Library Use the ScriptManager Understand ASP.NET AJAX Networking Understand ASP.NET AJAX Application Services Work with rich AJAX Toolkit Controls Perform testing and debugging of ASP.NET AJAX Applications Deploy ASP.NET AJAX Applications Build Custom Controls Prerequisites A basic knowledge of developing web applications with ASP NET
Course Materials The student kit includes a book and other necessary materials for this class. Course Outline Chapter 1: Developing Next-Generation Web Applications Bringing Richness to Web Applications Who Benefits from AJAX? Why End Users Want AJAX Applications Why Developers Want AJAX What Is ASP.NET AJAX? The ASP.NET Component The JavaScript Component The Web Services Component The Dynamic HTML Component Other AJAX Libraries Balancing Client and Server Programming with ASP.NET AJAX Chapter 2: Partial Page Updates The UpdatePanel Control Triggering Updates Calling the Update Method from the Server The Partial Page Update Lifecycle UpdatePanel Cautions and Complexities UpdateProgress Control Automatic Updates with the Timer Managing Page Requests The Request Lifecycle Canceling a Request Detecting Errors Working with Updates AJAX and Accessibility Chapter 3: JavaScript for the ASP.NET Developer Using JavaScript on the Client Getting JavaScript to the Browser Perceived Performance Script Resources Variable Types in JavaScript Language Anomalies What Is Equality? Null, Undefined, or Something Else Scoping Variables Using Prototypes Close on Closures Garbage Collection DOM Elements Avoiding Memory Leaks Evaluating eval
Handling Exceptions Getting Parts of a String Better JavaScript Reducing Script Using Cache Variables Chapter 4: Understanding the ASP.NET AJAX Client Library The Browser Page Lifecycle Using the Type System Declaring Namespaces Creating Classes Using Interfaces Defining Enums and Flags Base Class Library The String Class Dates and Numbers Arrays Supporting Intellisense Errors and Debugging The Debug Trace Console Creating Errors Validate Params The Browser Object Chapter 5: Using the ScriptManager The Ubiquitous ScriptManager Adding Script References Setting the ScriptMode Embedding Script Resources Script Localization Script Globalization Service References ASP.NET Application Services Forms Authentication Profile Service Error Handling Allowing Custom Errors Handling Errors during Asynchronous Postback Asynchronous Timeout Customizing the Location of Scripts Setting the Script Path Resolving Script References ScriptManager Proxy Script Compression Compatibility Chapter 6: ASP.NET AJAX Networking The XMLHttpRequest Object XMLHttpRequest Security
Object Properties and Methods Making WebRequest Calls Setting the HTTP Verb Establishing Timeout Limits Adding Custom Headers Passing Extra Data Resolving the Full URL Managing Web Requests Default Timeout Global Web Request Handling The WebRequestExecutor Passing Data Serialization JSON Format JSON Serialization PageMethods Working with Dates Bypassing Serialization Configuring the JSON Serializer Custom Serialization Chapter 7: ASP.NET AJAX Application Services Authenticating Users Configure Forms Authentication Custom Authentication Authenticating in JavaScript Accessing User Status Logging Out User Profile Data Defining Profile Data Accessing Profile Properties Accessing Profile Data from the Browser Preload Profile Properties Load Profile Properties Saving Profile Data Chapter 8: Rich AJAX Toolkit Controls Controlling Page Layout Accordion AlwaysVisibleControlExtender CollapsiblePanelExtender ResizableControl Tabs UI Effects Animations UpdatePanelAnimation DropShadow RoundedCorners Pop-up Controls Calendar
ConfirmButton HoverMenu PopupControl ModalPopup CascadingDropDown Chapter 9: Testing and Debugging ASP.NET AJAX Applications Debug and Release Scripts Using the Error Class Using the Sys.Debug Class Performing Trace Operations Performing Assert Operations Enabling Internet Explorer for Debugging Debugging with Internet Explorer and Visual Studio.NET 2005 Debugging with Internet Explorer and the Microsoft Script Debugger Debugging with Firefox and Firebug Viewing ASP.NET AJAX Request and Response Messages Using Fiddler to Inspect Messages Using Web Development Helper to Inspect Messages Chapter 10: Deploying ASP.NET AJAX Applications Installing the Bits ASP.NET AJAX The ASP.NET AJAX Control Toolkit ASP.NET Futures CTP Preparing for Web Farm Deployment Setting the MachineKey Handling Session State Using a Different Platform Avoiding Common Configuration Problems Disable Debugging Enable Custom Errors Disable Tracing Set Deployment Mode Creating Web Deployment Projects After Deployment Performance Monitoring Controlling AJAX Features Configuring IIS7 Using Compression for Scripts Compression of Dynamic Scripts Compression of Static Scripts Consider Using Shared Scripts Don t Change Version Paths Chapter 11: Building Custom Controls Building Client-Side ASP.NET AJAX Controls Extending JavaScript Registering a Control Namespace
Creating a Control Constructor Using the Prototype Design Pattern with JSON Defining Control Properties Initializing a Control and Handling Events Defining Control Methods Disposing of Control Resources Registering a Custom Control Class Creating a Client-Side Control Instance Building a Server-Side ASP.NET AJAX Control Embedding Scripts in Server-Side Controls Creating a Control Class and Implementing IScriptControl Overriding Render and OnPreRender Using a Custom ASP.NET AJAX Control in an ASP.NET Page