CONTENTS
Controlling the Generated XML Data .................................................................................................... 791
Serializing Collections of Objects ..................................................................................792
Customizing the Soap/Binary Serialization Process ......................................................794
A Deeper Look at Object Serialization .................................................................................................. 795
Customizing Serialization Using ISerializable....................................................................................... 796
Customizing Serialization Using Attributes........................................................................................... 799
Summary .......................................................................................................................800
Chapter 21: ADO.NET Part I: The Connected Layer..............................................801
A High-Level Definition of ADO.NET...............................................................................801
The Three Faces of ADO.NET................................................................................................................ 802
Understanding ADO.NET Data Providers........................................................................803
The Microsoft-Supplied ADO.NET Data Providers................................................................................. 804
A Word Regarding System.Data.OracleClient.dll .................................................................................. 806
Obtaining Third-Party ADO.NET Data Providers.................................................................................... 806
Additional ADO.NET Namespaces ..................................................................................806
The Types of the System.Data Namespace ...................................................................807
The Role of the IDbConnection Interface .............................................................................................. 809
The Role of the IDbTransaction Interface ............................................................................................. 809
The Role of the IDbCommand Interface................................................................................................ 809
The Role of the IDbDataParameter and IDataParameter Interfaces ..................................................... 810
The Role of the IDbDataAdapter and IDataAdapter Interfaces.............................................................. 811
The Role of the IDataReader and IDataRecord Interfaces .................................................................... 811
Abstracting Data Providers Using Interfaces .................................................................812
Increasing Flexibility Using Application Configuration Files ................................................................. 814
Creating the AutoLot Database ......................................................................................815
Creating the Inventory Table ................................................................................................................ 816
Adding Test Records to the Inventory Table......................................................................................... 818
xxxii