DataReaderExtensions.GetFieldValueAsync<T> Yöntem

Tanım

Belirtilen sütunun değerini istenen tür olarak zaman uyumsuz olarak alır.

public static System.Threading.Tasks.Task<T> GetFieldValueAsync<T> (this System.Data.Common.DbDataReader reader, string name, System.Threading.CancellationToken cancellationToken = default);
static member GetFieldValueAsync : System.Data.Common.DbDataReader * string * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'T>
<Extension()>
Public Function GetFieldValueAsync(Of T) (reader As DbDataReader, name As String, Optional cancellationToken As CancellationToken = Nothing) As Task(Of T)

Tür Parametreleri

T

Döndürülecek değerin türü.

Parametreler

reader
DbDataReader

Sütun değerini almak için veri okuyucu.

name
String

Sütunun adı.

cancellationToken
CancellationToken

Zaman uyumsuz işlemi iptal etmek için isteğe bağlı bir belirteç.

Döndürülenler

Task<T>

Belirtilen sütunun değerini içeren bir görev Result .

Özel durumlar

Veri alma sırasında bağlantı bırakıldı veya kapatıldı.

-veya-

Veri okuyucu, veri alma sırasında kapatıldı.

-veya-

Okunmaya hazır veri yok (örneğin, ilk Read() çağrılmadı veya döndürüldü false).

-veya-

Daha önce okunan bir sütunu sıralı modda okumayı denedim.

-veya-

Devam eden zaman uyumsuz bir işlem vardı. Bu, akış okunurken çağrılabilecekleri için sıralı modda çalışırken tüm Get_*_ yöntemleri için geçerlidir.

Belirtilen ad geçerli bir sütun adı değil.

Veritabanı tarafından döndürülen değer eşleşmiyor veya olarak türlenemiyor T.

İptal belirteci iptal edildi. Bu özel durum, döndürülen görevde depolanır.

Açıklamalar

Bu zaman uyumsuz yöntem yalnızca okuyucu sıralı modda oluşturulduğunda çağıran iş parçacığını engellememek için gereklidir.

Sıralı mod belirtilmezse, ReadAsync her tamamlandığında tüm sütun değerleri bellekte kullanılabilir hale gelmelidir ve yöntemin zaman uyumlu sürümünü çağırmak çağıran iş parçacığını engellememelidir.

Bu zaman uyumsuz yöntemin varsayılan uygulaması, zaman uyumlu karşılıklarını çağırır ve tamamlanmış bir Görev döndürür ve çağrılan iş parçacığını engelleme olasılığı vardır. Varsayılan uygulama, zaten iptal edilmiş bir iptal belirteci geçirildiyse iptal edilen bir görevi de döndürür.

Zaman uyumsuz programlamayı destekleyen veri sağlayıcıları, zaman uyumsuz G/Ç işlemlerini kullanarak varsayılan etkisizliği geçersiz kılmalıdır.

Bu yöntem, işlemin erken iptalini istemek için kullanılabilecek bir iptal belirteci kabul eder. Uygulamalar bu isteği yoksayabilir.

Döndürülen Görev henüz tamamlanmamışken DbDataReader nesnesinin diğer yöntemleri ve özellikleri çağrılmamalıdır.

Şunlara uygulanır