DbDataReader.IsDBNullAsync Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene de manera asincrónica un valor que indica si la columna contiene valores no existentes o que faltan.
Sobrecargas
IsDBNullAsync(Int32) |
Obtiene de manera asincrónica un valor que indica si la columna contiene valores no existentes o que faltan. |
IsDBNullAsync(Int32, CancellationToken) |
Obtiene de manera asincrónica un valor que indica si la columna contiene valores no existentes o que faltan. |
IsDBNullAsync(Int32)
- Source:
- DbDataReader.cs
- Source:
- DbDataReader.cs
- Source:
- DbDataReader.cs
Obtiene de manera asincrónica un valor que indica si la columna contiene valores no existentes o que faltan.
public:
System::Threading::Tasks::Task<bool> ^ IsDBNullAsync(int ordinal);
public System.Threading.Tasks.Task<bool> IsDBNullAsync (int ordinal);
member this.IsDBNullAsync : int -> System.Threading.Tasks.Task<bool>
Public Function IsDBNullAsync (ordinal As Integer) As Task(Of Boolean)
Parámetros
- ordinal
- Int32
La columna de base cero que se recuperará.
Devoluciones
Task<TResult> cuya propiedad Result es true
si el valor de la columna especificada es equivalente a DBNull
, o false
si no lo es.
Excepciones
La conexión se descartó o cerró durante la recuperación de datos.
o bien
El lector de datos se cerró durante la recuperación de datos.
o bien
No hay ningún dato listo para leer (por ejemplo, no se ha llamado al primer Read() o ha devuelto false).
o bien
Se intentó leer una columna leída previamente en modo secuencial.
o bien
Había una operación asincrónica en curso. Esto se aplica a todos los métodos Get* cuando se ejecutan en modo secuencial, ya que se les podía llamar mientras se leía una secuencia.
El índice de columna está fuera del rango.
Comentarios
Este método asincrónico solo es necesario para evitar bloquear el subproceso de llamada cuando el lector se crea en modo secuencial.
Si no se especifica el modo secuencial, todos los valores de columna deben estar disponibles en la memoria cada vez que se complete ReadAsync y llamar a la versión sincrónica del método no debe bloquear el subproceso que realiza la llamada.
La implementación predeterminada de este método asincrónico invoca a su homólogo sincrónico y devuelve una tarea completada, lo que podría bloquear el subproceso que realiza la llamada.
Los proveedores de datos que admiten programación asincrónica deben invalidar la implementación predeterminada mediante operaciones de E/S asincrónicas.
No se deben invocar otros métodos y propiedades del objeto DbDataReader hasta que se complete la tarea devuelta.
Este método almacena en la tarea que devuelve todas las excepciones que no son de uso que puede producir el homólogo sincrónico del método. Si se almacena una excepción en la tarea devuelta, se producirá esa excepción cuando se espere la tarea. Las excepciones de uso, como ArgumentException, se siguen iniciando de forma sincrónica. Para ver las excepciones almacenadas, consulte las excepciones producidas por IsDBNull(Int32).
Se aplica a
IsDBNullAsync(Int32, CancellationToken)
- Source:
- DbDataReader.cs
- Source:
- DbDataReader.cs
- Source:
- DbDataReader.cs
Obtiene de manera asincrónica un valor que indica si la columna contiene valores no existentes o que faltan.
public:
virtual System::Threading::Tasks::Task<bool> ^ IsDBNullAsync(int ordinal, System::Threading::CancellationToken cancellationToken);
public virtual System.Threading.Tasks.Task<bool> IsDBNullAsync (int ordinal, System.Threading.CancellationToken cancellationToken);
abstract member IsDBNullAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
override this.IsDBNullAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Overridable Function IsDBNullAsync (ordinal As Integer, cancellationToken As CancellationToken) As Task(Of Boolean)
Parámetros
- ordinal
- Int32
La columna de base cero que se recuperará.
- cancellationToken
- CancellationToken
Token para cancelar la operación asincrónica.
Devoluciones
Task<TResult> cuya propiedad Result es true
si el valor de la columna especificada es equivalente a DBNull
, o false
si no lo es.
Excepciones
La conexión se descartó o cerró durante la recuperación de datos.
o bien
El lector de datos se cerró durante la recuperación de datos.
o bien
No hay ningún dato listo para leer (por ejemplo, no se ha llamado al primer Read() o ha devuelto false).
o bien
Se intentó leer una columna leída previamente en modo secuencial.
o bien
Había una operación asincrónica en curso. Esto se aplica a todos los métodos Get* cuando se ejecutan en modo secuencial, ya que se les podía llamar mientras se leía una secuencia.
El índice de columna está fuera del rango.
Se canceló el token de cancelación. Esta excepción se almacena en la tarea devuelta.
Comentarios
Este método asincrónico solo es necesario para evitar bloquear el subproceso de llamada cuando el lector se crea en modo secuencial.
Si no se especifica el modo secuencial, todos los valores de columna deben estar disponibles en la memoria cada vez que se complete ReadAsync y llamar a la versión sincrónica del método no debe bloquear el subproceso que realiza la llamada.
La implementación predeterminada de este método asincrónico invoca a su homólogo sincrónico y devuelve una tarea completada, lo que podría bloquear el subproceso que realiza la llamada. La implementación predeterminada también devuelve una tarea cancelada si se pasa un token de cancelación ya cancelado.
Los proveedores de datos que admiten programación asincrónica deben invalidar la implementación predeterminada mediante operaciones de E/S asincrónicas.
Este método acepta un token de cancelación que se puede usar para solicitar que la operación se cancele pronto. Las implementaciones pueden omitir esta solicitud.
No se deben invocar otros métodos y propiedades del objeto DbDataReader hasta que se complete la tarea devuelta. Este método almacena en la tarea que devuelve todas las excepciones que no son de uso que puede producir el homólogo sincrónico del método. Si se almacena una excepción en la tarea devuelta, se producirá esa excepción cuando se espere la tarea. Las excepciones de uso, como ArgumentException, se siguen iniciando de forma sincrónica. Para ver las excepciones almacenadas, consulte las excepciones producidas por IsDBNull(Int32).