Compartir a través de


Implementar DataReader

La implementación de DataReader debe proporcionar dos capacidades básicas: acceso sólo hacia adelante en uno o más de los conjuntos de resultados obtenidos por la ejecución de Command y acceso a los valores de columna dentro de cada fila.

Los tipos de datos de su origen de datos se almacenarán en la aplicación basada en .NET como tipos de .NET Framework. La implementación de DataReader también proporcionará métodos de descriptor de acceso con establecimiento inflexible de tipos para el DataReader que devolverán valores de columna como tipos de .NET Framework. Algunos ejemplos de un descriptor de acceso con establecimiento inflexible de tipos serían GetInt32, GetString, etc.

Si su proveedor de datos de .NET Framework tiene tipos propietarios que no se pueden exponer correctamente como tipos de .NET Framework, puede extender las interfaces para admitir tipos propietarios y después agregar descriptores de acceso con información de tipos para el DataReader que devuelvan también tipos propietarios. Por ejemplo, puede agregar GetMiEstructura, GetMiMarcaTiempo, etc. Un ejemplo de esto es el proveedor de datos de .NET Framework de SQL Server, que expone los tipos propietarios mediante el espacio de nombres System.Data.SqlTypes. SqlDataReader expone entonces esos tipos como SqlTypes mediante el uso de métodos de descriptor de acceso con establecimiento inflexible de tipos. Por ejemplo: GetSqlBinary, GetSqlDateTime, GetSqlDecimal, etc.

Los temas siguientes contienen código de ejemplo para una implementación de un objeto DataReader, incluyendo algunos métodos de descriptor de acceso con establecimiento inflexible de tipos.

Para una implementación de Visual Basic de ejemplo:

Para una implementación de C# de ejemplo:

Vea también

Implementar un proveedor de datos de .NET Framework | Ejemplo de proveedores de datos de .NET Framework