Validator.ValidateObjectAsync Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Overload
| Nama | Deskripsi |
|---|---|
| ValidateObjectAsync(Object, ValidationContext, CancellationToken) |
Secara asinkron melempar jika ValidationException yang diberikan |
| ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken) |
Secara asinkron melempar jika instans objek yang ValidationException diberikan tidak valid. |
ValidateObjectAsync(Object, ValidationContext, CancellationToken)
- Sumber:
- Validator.cs
Secara asinkron melempar jika ValidationException yang diberikan instance tidak valid.
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Constructing a ValidationContext without a display name is not trim-safe because it uses reflection to discover the type of the instance being validated in order to resolve the DisplayNameAttribute when a display name is not provided.")]
public static System.Threading.Tasks.Task ValidateObjectAsync(object instance, System.ComponentModel.DataAnnotations.ValidationContext validationContext, System.Threading.CancellationToken cancellationToken = default);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Constructing a ValidationContext without a display name is not trim-safe because it uses reflection to discover the type of the instance being validated in order to resolve the DisplayNameAttribute when a display name is not provided.")>]
static member ValidateObjectAsync : obj * System.ComponentModel.DataAnnotations.ValidationContext * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ValidateObjectAsync (instance As Object, validationContext As ValidationContext, Optional cancellationToken As CancellationToken = Nothing) As Task
Parameter
- instance
- Object
Instans objek untuk diuji. Ini tidak dapat null.
- validationContext
- ValidationContext
Menjelaskan objek yang sedang divalidasi dan menyediakan layanan dan konteks untuk validator.
- cancellationToken
- CancellationToken
A CancellationToken untuk mengamati sambil menunggu tugas selesai.
Mengembalikan
mewakili Task operasi validasi asinkron.
- Atribut
Pengecualian
Kapan instance adalah null.
Kapan validationContext adalah null.
Ketika instance tidak cocok dengan pada ObjectInstancevalidationContext.
Ketika instance ditemukan tidak valid.
Operasi validasi dibatalkan.
Keterangan
Metode ini memeriksa RequiredAttribute atribut pada properti objek. Jika validasi properti berhasil, metode mengevaluasi atribut yang ValidationAttribute dilampirkan ke jenis objek.
Kelebihan beban ini tidak mengevaluasi atribut validasi tingkat properti lainnya. Untuk mengevaluasi atribut tersebut, panggil kelebihan beban yang menerima validateAllProperties dengan argumen yang diatur ke true.
Validasi berjalan dalam tiga tahap: validasi properti, validasi atribut tingkat jenis, dan validasi tingkat objek. Setiap tahap hanya berjalan jika tahap sebelumnya berhasil. Validasi tingkat objek lebih suka dipanggil ValidateAsync(ValidationContext, CancellationToken) saat diimplementasikan, dengan Validate(ValidationContext) sebagai fallback untuk objek yang hanya mengimplementasikan antarmuka sinkron. Ini tidak memanggil keduanya.
Berlaku untuk
ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken)
- Sumber:
- Validator.cs
Secara asinkron melempar jika instans objek yang ValidationException diberikan tidak valid.
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Constructing a ValidationContext without a display name is not trim-safe because it uses reflection to discover the type of the instance being validated in order to resolve the DisplayNameAttribute when a display name is not provided.")]
public static System.Threading.Tasks.Task ValidateObjectAsync(object instance, System.ComponentModel.DataAnnotations.ValidationContext validationContext, bool validateAllProperties, System.Threading.CancellationToken cancellationToken = default);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Constructing a ValidationContext without a display name is not trim-safe because it uses reflection to discover the type of the instance being validated in order to resolve the DisplayNameAttribute when a display name is not provided.")>]
static member ValidateObjectAsync : obj * System.ComponentModel.DataAnnotations.ValidationContext * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ValidateObjectAsync (instance As Object, validationContext As ValidationContext, validateAllProperties As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task
Parameter
- instance
- Object
Instans objek untuk diuji. Ini tidak dapat null.
- validationContext
- ValidationContext
Menjelaskan objek yang sedang divalidasi dan menyediakan layanan dan konteks untuk validator.
- validateAllProperties
- Boolean
Jika true, juga memvalidasi semua instanceproperti.
- cancellationToken
- CancellationToken
A CancellationToken untuk mengamati sambil menunggu tugas selesai.
Mengembalikan
mewakili Task operasi validasi asinkron.
- Atribut
Pengecualian
Kapan instance adalah null.
Kapan validationContext adalah null.
Ketika instance tidak cocok dengan pada ObjectInstancevalidationContext.
Ketika instance ditemukan tidak valid.
Operasi validasi dibatalkan.
Keterangan
Metode ini memeriksa RequiredAttribute atribut pada properti objek bahkan ketika validateAllProperties adalah false. Jika validasi properti berhasil, metode mengevaluasi atribut yang ValidationAttribute dilampirkan ke jenis objek.
Jika validateAllProperties adalah true, metode ini juga mengevaluasi atribut validasi lainnya pada properti langsung objek. Proses ini tidak memvalidasi nilai properti secara rekursif.
Validasi berjalan dalam tiga tahap: validasi properti, validasi atribut tingkat jenis, dan validasi tingkat objek. Setiap tahap hanya berjalan jika tahap sebelumnya berhasil. Validasi tingkat objek lebih suka dipanggil ValidateAsync(ValidationContext, CancellationToken) saat diimplementasikan, dengan Validate(ValidationContext) sebagai fallback untuk objek yang hanya mengimplementasikan antarmuka sinkron. Ini tidak memanggil keduanya.