次の方法で共有


SqlDataReader.IsDBNullAsync(Int32, CancellationToken) メソッド

定義

列に格納されている値が存在しない値または欠損値かどうかを示す値を取得する IsDBNull(Int32) の非同期バージョン。

キャンセル トークンを使用すると、コマンド タイムアウトが経過する前に操作を破棄するように要求できます。 例外は、返されたタスク オブジェクトによって報告されます。

public:
 override System::Threading::Tasks::Task<bool> ^ IsDBNullAsync(int i, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<bool> IsDBNullAsync (int i, System.Threading.CancellationToken cancellationToken);
override this.IsDBNullAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Overrides Function IsDBNullAsync (i As Integer, cancellationToken As CancellationToken) As Task(Of Boolean)

パラメーター

i
Int32

取得する、0 から始まる列。

cancellationToken
CancellationToken

操作を取り消すことを示す通知を反映する取り消し命令。 これは取り消しを保証しません。 CancellationToken.None の設定は、このメソッドを IsDBNull(Int32) と同じにします。 返されたタスクを取り消し済みとしてマークする必要があります。

戻り値

指定した列の値が true と等価である場合は DBNull。それ以外の場合は false

例外

データの取得中、接続は破棄されるか、または閉じられます。

SqlDataReader は、データの取得時に閉じます。

読み取ることのできるデータはありません (たとえば、最初の Read() は呼び出されなかったか、false を返しました)。

以前に読み取られた列をシーケンシャル モードで読み取ろうとしています。

非同期操作が進行中でした。 シーケンシャル モードで実行中、これはすべての Get* メソッドに適用されます。ストリームの読み取り中に呼び出すことができるためです。

Context Connection=true が接続文字列に指定されています。

存在しない列を読み取ろうとしています。

キャンセル トークンが取り消されました。 この例外は、返されたタスクに格納されます。

注釈

詳細については、「 SqlClient ストリーミング サポート」を参照してください。

このメソッドは、メソッドの同期的な例外がスローできる非使用例外をすべて返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクの待機時にスローされます。 などの ArgumentException使用例外は、引き続き同期的にスローされます。 格納されている例外については、 によって IsDBNull(Int32)スローされる例外に関するページを参照してください。

適用対象