DbDataReader.IsDBNullAsync DbDataReader.IsDBNullAsync DbDataReader.IsDBNullAsync DbDataReader.IsDBNullAsync Method

定義

列に格納されている値が存在しない値または欠損値かどうかを示す値を非同期で取得します。Asynchronously gets a value that indicates whether the column contains non-existent or missing values.

オーバーロード

IsDBNullAsync(Int32, CancellationToken) IsDBNullAsync(Int32, CancellationToken) IsDBNullAsync(Int32, CancellationToken)

列に格納されている値が存在しない値または欠損値かどうかを示す値を非同期で取得します。Asynchronously gets a value that indicates whether the column contains non-existent or missing values.

IsDBNullAsync(Int32) IsDBNullAsync(Int32) IsDBNullAsync(Int32) IsDBNullAsync(Int32)

列に格納されている値が存在しない値または欠損値かどうかを示す値を非同期で取得します。Asynchronously gets a value that indicates whether the column contains non-existent or missing values.

IsDBNullAsync(Int32, CancellationToken) IsDBNullAsync(Int32, CancellationToken) IsDBNullAsync(Int32, CancellationToken)

列に格納されている値が存在しない値または欠損値かどうかを示す値を非同期で取得します。Asynchronously gets a value that indicates whether the column contains non-existent or missing values.

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>

パラメーター

ordinal
Int32 Int32 Int32 Int32

取得する、0 から始まる列。The zero-based column to be retrieved.

cancellationToken
CancellationToken CancellationToken CancellationToken CancellationToken

非同期操作を取り消すトークン。A token to cancel the asynchronous operation.

戻り値

指定された列値が DBNull に等しい場合は、Result プロパティが true になり、等しくない場合は false になる Task<TResult>A Task<TResult> whose Result property is true if the specified column value is equivalent to DBNull or false if it is not.

例外

データの取得中、接続が切断されたか、閉じられました。The connection was dropped or closed during the data retrieval.

または-or-

データの取得中、データ リーダーが閉じられます。The data reader is closed during the data retrieval.

- または --or-

読み取ることのできるデータはありません (たとえば、最初の Read() は呼び出されなかったか、false を返しました)。There is no data ready to be read (for example, the first Read() hasn't been called, or returned false).

- または --or-

以前に読み取られた列をシーケンシャル モードで読み取ろうとしています。Trying to read a previously read column in sequential mode.

- または --or- 非同期操作が進行中でした。There was an asynchronous operation in progress. シーケンシャル モードで実行中、これはすべての Get* メソッドに適用されます。ストリームの読み取り中に呼び出すことができるためです。This applies to all Get* methods when running in sequential mode, as they could be called while reading a stream.

列インデックスが範囲外です。The column index is out of range.

注釈

この非同期メソッドは、リーダーがシーケンシャルモードで作成されるときに、呼び出し元のスレッドがブロックされないようにするためだけに必要です。This asynchronous method is only needed to avoid blocking the calling thread when the reader is created in sequential mode.

シーケンシャルモードが指定されていない場合、ReadAsync が完了するたびにすべての列の値がメモリ内で使用可能になり、メソッドの同期バージョンを呼び出すと、呼び出し元のスレッドがブロックされないようにする必要があります。If sequential mode isn't specified, all column values should become available in memory each time ReadAsync completes, and calling the synchronous version of the method shouldn't block the calling thread.

この非同期メソッドの既定の実装は、対応する同期メソッドを呼び出し、完了したタスクを返します。これにより、呼び出し元のスレッドがブロックされる可能性があります。The default implementation of this asynchronous method invokes its synchronous counterpart and returns a completed Task, potentially blocking the calling thread. 既定の実装は、既に取り消されたキャンセルトークンが渡された場合にも、取り消されたタスクを返します。The default implementation also returns a cancelled task if passed an already cancelled cancellation token.

非同期プログラミングをサポートするデータプロバイダーは、非同期 i/o 操作を使用して既定の実装をオーバーライドする必要があります。Data providers that support asynchronous programming should override the default implementation using asynchronous I/O operations.

このメソッドは、早期に操作をキャンセルすることを要求するために使用できるキャンセル トークンを受け取ります。This method accepts a cancellation token that can be used to request the operation to be cancelled early. 実装は、この要求を無視する場合があります。Implementations may ignore this request.

返されたタスクが完了していないうちは、DbDataReader のオブジェクトの他のメソッドとプロパティを呼び出さないでください。Other methods and properties of the DbDataReader object should not be invoked while the returned Task is not yet completed.

IsDBNullAsync(Int32) IsDBNullAsync(Int32) IsDBNullAsync(Int32) IsDBNullAsync(Int32)

列に格納されている値が存在しない値または欠損値かどうかを示す値を非同期で取得します。Asynchronously gets a value that indicates whether the column contains non-existent or missing values.

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)

パラメーター

ordinal
Int32 Int32 Int32 Int32

取得する、0 から始まる列。The zero-based column to be retrieved.

戻り値

指定された列値が DBNull に等しい場合は、Result プロパティが true になり、等しくない場合は false になる Task<TResult>A Task<TResult> whose Result property is true if the specified column value is equivalent to DBNull or false if it is not.

例外

データの取得中、接続が切断されたか、閉じられました。The connection was dropped or closed during the data retrieval.

または-or-

データの取得中、データ リーダーが閉じられます。The data reader is closed during the data retrieval.

- または --or-

読み取ることのできるデータはありません (たとえば、最初の Read() は呼び出されなかったか、false を返しました)。There is no data ready to be read (for example, the first Read() hasn't been called, or returned false).

- または --or-

以前に読み取られた列をシーケンシャル モードで読み取ろうとしています。Trying to read a previously read column in sequential mode.

- または --or-

非同期操作が進行中でした。There was an asynchronous operation in progress. シーケンシャル モードで実行中、これはすべての Get* メソッドに適用されます。ストリームの読み取り中に呼び出すことができるためです。This applies to all Get* methods when running in sequential mode, as they could be called while reading a stream.

列インデックスが範囲外です。The column index is out of range.

注釈

この非同期メソッドは、リーダーがシーケンシャルモードで作成されるときに、呼び出し元のスレッドがブロックされないようにするためだけに必要です。This asynchronous method is only needed to avoid blocking the calling thread when the reader is created in sequential mode.

シーケンシャルモードが指定されていない場合、ReadAsync が完了するたびにすべての列の値がメモリ内で使用可能になり、メソッドの同期バージョンを呼び出すと、呼び出し元のスレッドがブロックされないようにする必要があります。If sequential mode isn't specified, all column values should become available in memory each time ReadAsync completes, and calling the synchronous version of the method shouldn't block the calling thread.

この非同期メソッドの既定の実装は、対応する同期メソッドを呼び出し、完了したタスクを返します。これにより、呼び出し元のスレッドがブロックされる可能性があります。The default implementation of this asynchronous method invokes its synchronous counterpart and returns a completed Task, potentially blocking the calling thread.

非同期プログラミングをサポートするデータプロバイダーは、非同期 i/o 操作を使用して既定の実装をオーバーライドする必要があります。Data providers that support asynchronous programming should override the default implementation using asynchronous I/O operations.

返されたタスクが完了していないうちは、DbDataReader のオブジェクトの他のメソッドとプロパティを呼び出さないでください。Other methods and properties of the DbDataReader object should not be invoked while the returned Task is not yet completed.

適用対象