3.9. Reading Column Values through IDataRecord

Individual column values are read through a DataReader's implementation of the IDataRecord interface. IDataRecord includes a series of strongly typed accessors (shown in Listing 3-18) that take a zero-based column ordinal and return a CLS type. These methods map data source data types to CLS data types. Providers can choose to expose accessors for data source-specific data types; for example, the SqlClient provider's accessors can return instances of structures defined in the System.Data.SqlTypes namespace. Strongly typed accessors do not necessarily convert types; using the wrong getter (for example, calling GetString on an integer column) results in an InvalidCastException. A special method,

Get Essential ADO.NET now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.