DbDataReader.IsDBNullAsync Methode

Definition

Ruft asynchron einen Wert ab, der angibt, ob die Spalte nicht vorhandene oder fehlende Werte enthält.

Überlädt

IsDBNullAsync(Int32)

Ruft asynchron einen Wert ab, der angibt, ob die Spalte nicht vorhandene oder fehlende Werte enthält.

IsDBNullAsync(Int32, CancellationToken)

Ruft asynchron einen Wert ab, der angibt, ob die Spalte nicht vorhandene oder fehlende Werte enthält.

IsDBNullAsync(Int32)

Ruft asynchron einen Wert ab, der angibt, ob die Spalte nicht vorhandene oder fehlende Werte enthält.

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)

Parameter

ordinal
Int32

Die nullbasierte abzurufende Spalte.

Gibt zurück

Eine Task<TResult>, deren Result-Eigenschaft true ist, wenn der angegebene Spaltenwert DBNull entspricht, andernfalls false.

Ausnahmen

Die Verbindung wurde während des Datenabrufs gelöscht oder geschlossen.

- oder -

Der Datenreader wurde während des Datenabrufs geschlossen.

- oder -

Es gibt keine Daten, die gelesen werden können (der erste Aufruf von Read() hat z. B. nicht stattgefunden oder "false" zurückgegeben).

- oder -

Es wird versucht, eine zuvor gelesene Spalte im sequenziellen Modus zu lesen.

- oder -

Es gab einen aktiven asynchronen Vorgang. Dies gilt für alle Get*-Methoden bei der Ausführung im sequenziellen Modus, da sie aufgerufen werden können, während des Lesens eines Datenstroms.

Der Spaltenindex ist außerhalb des gültigen Bereichs.

Hinweise

Diese asynchrone Methode ist nur erforderlich, um das Blockieren des aufrufenden Threads zu vermeiden, wenn der Leser im sequenziellen Modus erstellt wird.

Wenn der sequenzielle Modus nicht angegeben ist, sollten alle Spaltenwerte jedes Mal im Arbeitsspeicher verfügbar werden, wenn ReadAsync abgeschlossen wird, und das Aufrufen der synchronen Version der Methode sollte den aufrufenden Thread nicht blockieren.

Die Standardimplementierung dieser asynchronen Methode ruft ihre synchrone Entsprechung auf und gibt einen abgeschlossenen Task zurück, der möglicherweise den aufrufenden Thread blockiert.

Datenanbieter, die asynchrone Programmierung unterstützen, sollten die Standardimplementierung mithilfe asynchroner E/A-Vorgänge außer Kraft setzen.

Andere Methoden und Eigenschaften des DbDataReader-Objekts sollten nicht aufgerufen werden, während die zurückgegebene Aufgabe noch nicht abgeschlossen ist.

Diese Methode speichert in der Aufgabe, die sie alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Nutzungsausnahmen, z. B ArgumentException. , werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter die von ausgelösten IsDBNull(Int32)Ausnahmen.

Gilt für:

IsDBNullAsync(Int32, CancellationToken)

Ruft asynchron einen Wert ab, der angibt, ob die Spalte nicht vorhandene oder fehlende Werte enthält.

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)

Parameter

ordinal
Int32

Die nullbasierte abzurufende Spalte.

cancellationToken
CancellationToken

Ein Token zum Abbrechen des asynchronen Vorgangs.

Gibt zurück

Eine Task<TResult>, deren Result-Eigenschaft true ist, wenn der angegebene Spaltenwert DBNull entspricht, andernfalls false.

Ausnahmen

Die Verbindung wurde während des Datenabrufs gelöscht oder geschlossen.

- oder -

Der Datenreader wurde während des Datenabrufs geschlossen.

- oder -

Es gibt keine Daten, die gelesen werden können (der erste Aufruf von Read() hat z. B. nicht stattgefunden oder "false" zurückgegeben).

- oder -

Es wird versucht, eine zuvor gelesene Spalte im sequenziellen Modus zu lesen.

- oder -

Es gab einen aktiven asynchronen Vorgang. Dies gilt für alle Get*-Methoden bei der Ausführung im sequenziellen Modus, da sie aufgerufen werden können, während des Lesens eines Datenstroms.

Der Spaltenindex ist außerhalb des gültigen Bereichs.

Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.

Hinweise

Diese asynchrone Methode ist nur erforderlich, um das Blockieren des aufrufenden Threads zu vermeiden, wenn der Leser im sequenziellen Modus erstellt wird.

Wenn der sequenzielle Modus nicht angegeben ist, sollten alle Spaltenwerte jedes Mal im Arbeitsspeicher verfügbar werden, wenn ReadAsync abgeschlossen wird, und das Aufrufen der synchronen Version der Methode sollte den aufrufenden Thread nicht blockieren.

Die Standardimplementierung dieser asynchronen Methode ruft ihre synchrone Entsprechung auf und gibt einen abgeschlossenen Task zurück, der möglicherweise den aufrufenden Thread blockiert. Die Standardimplementierung gibt auch einen abgebrochenen Task zurück, wenn ein bereits abgebrochenes Abbruchtoken übergeben wurde.

Datenanbieter, die asynchrone Programmierung unterstützen, sollten die Standardimplementierung mithilfe asynchroner E/A-Vorgänge außer Kraft setzen.

Diese Methode nimmt ein Abbruchtoken an, das verwendet werden kann, um ein frühes Abbrechen des Vorgangs anzufordern. Implementierungen können diese Anforderung ignorieren.

Andere Methoden und Eigenschaften des DbDataReader-Objekts sollten nicht aufgerufen werden, während die zurückgegebene Aufgabe noch nicht abgeschlossen ist. Diese Methode speichert in der Aufgabe, die sie alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Nutzungsausnahmen, z. B ArgumentException. , werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter die von ausgelösten IsDBNull(Int32)Ausnahmen.

Gilt für: