Acknowledgments
Introduction
Part Ⅰ: ADO.NET 2.0 Basics
Chapter 1: Migrating from ADO to ADO.NET
A New Approach to Data Access
The System.Data Namespace
ADO.NET Data Providers
Basic ADO.NET Data Objects
Creating Basic ADO.NET Data Objects with SqlClient
Applying Transactions to Multi-Table Updates
Using OleDb, SqlXml, and Odbc Member Classes
Working with Typed DataReader and SqlResultSet Data
ADO.NET Typed DataSet Objects
Add a Typed DataSet from an SQL Server Data Source
Add a DataGridView and BindingNavigator Controls
Persist and Reopen the DataSet
Change from a DataViewGrid to a Details Form
Add a Related DataBound Control
Summary
Chapter 2: Introducing New ADO.NET 2.0 Features
Working with New ADO.NET 2.0 Runtime Windows Form Objects
Use the DbProviderFactories to Create Database-Agnostic Projects
Retrieve Base Table Schemas
Check Available SQL Server Instances and ADO.NET 2.0 Data Providers
Batch Inserts to SQL Server Tables with the SqlBulkCopy Object
Get SQL Server Connection Statistics
Execute SqlCommands Asynchronously
Create Standalone DataTables
Use Nullable Types to Support DBNull Values
Using New ADO.NET 2.0 Persistent Windows Form Objects
Compare ADO.NET 1.x and 2.0 Data Designers
Add Missing ADO.NET Controls to the Toolbox
Upgrade l.x Projects to ADO.NET 2.0 Components
Add Multi-Level Subforms
Parameterize the MasterDetailsForm
Batch Multiple Updates
Design and Display Reports with the ReportViewer Control
Summary
Chapter 3: Adopting Best Practices for Data-Centric Projects
Establish Architectural Best Practices
Reference Architectures
Find Patterns for Projects
Enterprise Solution Patterns Using Microsoft .NET
Data Patterns
Distributed Systems Patterns
Integration Patterns
Try Application Block Libraries
The Data Access Application Block
The DataAccessQuickStart Client
Adhere to Design Guides
The .NET Data Access Architecture Guide
Improving .NET Application Performance and Scalability
Designing Data Tier Components and Passing Data Through Tiers
Apply Class Library Design Guidelines
Naming Guidelines
Class Member Usage Guidelines
Prepare for Service-Oriented Architecture
The Road to Service-Oriented Architecture
Implement SOA with Web Services
Ensure Fully Interoperable Web Services
Use FxCop to Validate Project Code
Automate Test-Driven Development
Add a Unit Test Project to a VS 2005 Solution
Edit and Run the Wizard-Generated Tests
Run the SQL Server 2000 Best Practices Analyzer
Apply Specific Best Practices to ADO.NET 2.0 Projects
Use Identical Connection Strings to Pool Database Connections
Run SQL Server Profiler to Inspect SQL and RPC Queries
Avoid Adding Runtime CommandBuilder Instances
……
Part Ⅱ: Data Binding in Windows Forms and Controls
Chapter 4: Programming TableAdapters, BindingSources, and DataGridViews
Chapter 5: Adding Data Validation and Concurrency Management
Chapter 6: Applying Advanced DataSet Techniques
Part Ⅲ: Data Binding in ASP.NET 2.0
Chapter 7: Working with ASP.NET 2.0 DataSources and Bound Controls
Chapter 8: Applying Advanced ASP.NET 2.0 Data Techniques
Chapter 9: Publishing Data-Driven Web Services
Part Ⅳ: SQL Server 2005 and ADO.NET 2.0
Chapter 10: Upgrading from SQL Server 2000 to 2005
Chapter 11: Creating SQL Server Projects
Chapter 12: Exploring the XML Data Type
Index