ASP.NET Distributed Data Applications (1-861004-92-3)


Chapter 1 - The Distributed Application

·          What Are Distributed Data Applications?

·          Why Do We Need To Distribute?

·          Windows to Web.

·          Data is dead, long live Data.

·          How Can We Do "Distributed" on the Internet?

·          Internet Protocols. Internet Clients

·          Server Port and Firewall Configurations

·          The Elements of a Distributed Application

·          Data Stores, server side and client side

·          Client Devices and client Applications

·          Working with "Rich" Clients. Working with "Down-level" Clients

·          Processing and Presenting Information

·          A Simple 3-tier Design. A More Realistic 3-tier Design

·          Moving to n-tier Designs. A More Realistic n-tier Design

·          Framework Resources for the Middle Tier

·          Understanding ADO.NET

·          About "Relational" Data Access

·          Classic ADO via Interop. Classic ADO Techniques

·          The ADO.NET Data Access Classes.

·          The .NET Data Providers

·          Connected Data Access - the DataReader

·          Disconnected Data Access - the DataSet

·          The DataAdapter Object, Pushing Changes Back to the Data Store

·          Understanding System.Xml

·          Representing Data and Information

·          Schemas and DTDs, Unstructured Information

·          The W3C Interface Recommendations

·          An Overview of the System.Xml Namespace, the System.Xml Classes

·          The XML "Document" Objects

·          The XML "Navigator" Object

·          XML and Relational Data Synchronization

·          The XML "Writer" and "Reader" Objects

·          The XML "Validation" Objects

·          The XSL "Transformation" Object

·          Data Access and the n-tier Model.

·          What is The Data Being Used For?

·          Do We Need to Remote the Data?

·          Serialization and the System.Runtime.Remoting Classes

·          Are We Just Displaying the Data?

·          Some n-tier Data Access Scenarios

·          Displaying Data - Doing It All On The Server

·          Expanding the Middle Tier, Moving Processing to the Client

·          Getting Updates Back to the Server, HTML Forms and Query Strings

·          Client-side Components, Client Side Executables and Services

·          Summary

Chapter 2 - Data Access Components

·          Data Access Components

·          Different Types of "Component"

·          .NET Components

·          Building .NET Components

·          Using a .NET Component

·          COM and COM+ Components

·          User Controls

·          Using a User Control

·          Include Files

·          Server Controls

·          Accessing and Exposing Data

·          Delivering Data to Rich Clients

·          Managing Data for Down-level Clients

·          Displaying XML Data

·          The DataSet Object

·          The Structure of the DataSet Object

·          The DataTable Object

·          Filling a DataSet with a DataAdapter

·          Table and Column Mappings

·          When Should I Use a DataSet?

·          Relational Data Access Component Examples

·          Setting Up the Examples

·          Accessing and Returning Relational Data

·          Returning a DataReader Reference

·          The SupplierList Data Access Component

·          The GetSuppliersDataReader Method

·          Displaying the Results

·          Returning a DataSet Object

·          The GetSuppliersDataSet Method

·          Returning a Custom Array Reference

·          Filling the Array

·          Displaying the Results

·          Returning an ArrayList Reference

·          Filling the ArrayList

·          Displaying the Results

·          Returning an XML String

·          Displaying the Results

·          The Resulting XML and the XSL Stylesheet

·          Returning an XmlDocument Object

·          Displaying the Results

·          Returning XML via SQLXML from SQL Server

·          The GetSuppliersSqlXml Method

·          Displaying the Results

·          Returning Related Tables in a DataSet Object

·          The Data Access Component and Stored Procedures

·          The GetOrdersByCustomerDataSet Method

·          Filling the Tables

·          Creating the Relationship Between the Tables

·          Displaying the Results in Tables

·          Using the Data Relationship Information

·          Searching for Customers By Name

·          Summary

Chapter 3 - Accessing XML Documents

·          Accessing XML Documents

·          XML Data Access Component Examples

·          Accessing and Returning Relational Data

·          The SupplierListXml Data Access Component

·          Returning an XmlTextReader Reference

·          Displaying the Results

·          The Page_Load Event Handler

·          Parsing an XML Document

·          Returning an XmlValidatingReader Reference

·          Creating and Initializing an XmlValidatingReader Object

·          Catching Validation Events

·          Displaying the Results of the GetSuppliersValidatingReader Method

·          Returning a DataSet Object

·          Displaying the Results

·          Returning a Custom Array Reference

·          Using the XPathNavigator and XPathNodeIterator Objects

·          Building the Array

·          Displaying the Results

·          Returning an ArrayList Reference

·          Displaying the Results

·          Returning an XML String

·          Displaying the Results

·          Returning an XmlDocument Object

·          Displaying the Results

·          Returning an XPathDocument Object

·          Displaying the Results

·          Summary

Chapter 4 - The Application Plumbing

·          The Application Plumbing

·          Overview of Client-side Techniques

·          Available Client-side Programming Techniques

·          Making a Choice on Client Support

·          Providing Alternative Client Support

·          Adapting Content for Individual Clients

·          Using Client "Categories"

·          Our Chosen Categories

·          Choosing Categories Based on Actual Client Requests

·          Remoting Data to the Client

·          Remoting Relational Data to the Client

·          Remote Data Services with Relational Data

·          The Text Data Control

·          Running the .NET Framework on the Client

·          Using a Web Service

·          Remoting XML Data to the Client

·          Client-side XML Parsers

·          The MSXML Parser

·          MSXML Parser Versions

·          Running the .NET Framework on the Client

·          The Basics of .NET Remoting

·          Aspects of .NET Remoting

·          Object Marshalling

·          Marshal By Value - Automatic

·          Marshal By Value - Custom

·          Invoking Serialization

·          Marshal By Reference

·          Marshal By Object or Marshal By Reference?

·          Activation and Lifetime

·          Channels

·          Configuration

·          Hosting the server in IIS

·          Security

·          Using ASP.NET Sessions

·          Sessions Configuration in ASP.NET

·          Disabling Session Support

·          Sessions and Web Farms

·          Checking for Session Support

·          Munging URLs for Session Support

·          Client Detection Example

·          Overview of the Process

·          Detecting the Client Type

·          Detecting Non-HTML Client Devices

·          Using the Mobile Internet Toolkit

·          The Client Type Detection Code

·          Determining the Type for HTML Clients

·          The default.aspx Page

·          Detection Errors and Unsupported Clients

·          Checking for Client-side Scripting Support

·          Redirecting The Client If Scripting Is Enabled

·          The Device-Specific "Home" Pages

·          Displaying the Results

·          The WML-specific "Home" Page

·          Getting the Capabilities Information

·          Viewing the Results

·          Internet Explorer 6.0

·          WML Devices - the Nokia Phone Simulator

·          Summary

Chapter 5 - Working with Down-level Clients

·          Working with Down-level Clients

·          A Multiple-Client Order List Application

·          The User Interface

·          Detecting the Client Type

·          Checking for Client-Side Scripting Support

·          Session Support

·          The Data Access Tier

·          Maximizing Efficiency through Caching

·          The Order List Application - HTML Version

·          The Outline Process

·          Searching for Customers

·          The HTML Form Controls

·          Displaying a List of Customers

·          Showing the Help Text

·          Calling the Data Access Component

·          Performing the Customer Search

·          Fetching and Displaying the Results

·          The DataGrid to Display the Customer List

·          Defining the Columns in the DataGrid

·          Handling Paging in the DataGrid

·          Displaying a List of Orders

·          The Order List Frameset Page

·          Getting the Data from the Session or Server

·          The GetDataSetFromSessionOrServer Function

·          The DataGrid to Display the Order List

·          Using a "Template" Column

·          The Page_Load Event Handler

·          Displaying the Order List

·          Displaying the Order Details

·          The Declaration of the DataGrid and Labels

·          The ASP.NET Code for the Page

·          Getting the DataSet from the Server or Session

·          The ShowOrderLines Routine

·          Calculating the Order Total and Displaying the Details

·          The Order List Application - "Mobile" Version

·          The Outline Process

·          Fetching Data from the Server

·          Fetching the Customer List

·          Fetching the Orders Data

·          Massaging the DataSet

·          The Mobile Page Content

·          Adding Style to the Output

·          The Mobile Stylesheet for our Application

·          Setting the Search Type

·          Specifying the Search String

·          The Code in the SetSearchType Event Handler

·          Showing the Customer List

·          The Code in the GetCustomers Event Handler

·          Listing the Orders for the Selected Customer

·          The Code in the GetOrders Event Handler

·          Displaying the Order Details

·          The Code in the ShowOrderDetail Event Handler

·          Summary

Chapter 6 - Working with Rich Clients

·          Working with Rich Clients

·          Working with XML

·          Why XSL and XSLT?

·          Exposing and Delivering XML

·          Using XML in IE5 and Above

·          Building the Middle Tier

·          Fetching the Customer List

·          The Page_Load Event Handler

·          Fetching the Order List

·          The Page_Load Event Handler

·          Nested XML Output from a DataSet

·          Sel