Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 45361|Jawab: 1

[ASP.NET] ASP.NET Core(4) memfilter validasi model ModelState terpadu

[Salin tautan]
Dipaparkan pada 2021-3-13 20:48:05 | | | |
Status model dan anotasi data di C# memberi kita cara yang nyaman untuk meminta verifikasi data. Verifikasi model ModelState berarti membantu backend menghemat banyak pekerjaan verifikasi parameter, cukup tambahkan fitur yang sesuai ke model, dan akhirnya panggil ModelState.IsValid di pengontrol untuk mendapatkan hasil verifikasi. Tanpa ModelState, validasi parameter backend kami mungkin perlu menulis banyak penilaian if.

Persyaratan: Kami menilai apakah parameter POST telah lulus verifikasi model di filter, jika tidak lulus verifikasi, langsung mengembalikan pesan kesalahan json terpadu, hanya setelah verifikasi berlalu, dan kemudian masukkan metode pengontrol, keuntungannya adalah,Kita tidak perlu menilai setiap pengontrol dan melakukan pekerjaan berulang

Meninjau validasi model ModelState

webapi ModelState.IsValid validasi
https://www.itsvse.com/thread-3809-1-1.html

Memvalidasi bidang model secara manual ASP.NET MVC
https://www.itsvse.com/thread-9500-1-1.html

Asp.net Validasi Data Model Inti
https://www.itsvse.com/thread-9016-1-1.html

Filter ulasan

Filter kustom mvc ActionFilterAttribute

https://www.itsvse.com/thread-2609-1-1.html

Tinjau pengetahuan Anda tentang ASP.NET Core

ASP.NET Inti (iii) Membuat instans secara dinamis menggunakan ActivatorUtilities
https://www.itsvse.com/thread-9488-1-1.html

ASP.NET Inti (2) Mulai ulang aplikasi dengan kode
https://www.itsvse.com/thread-9480-1-1.html

ASP.NET Core (1) menggunakan caching Redis
https://www.itsvse.com/thread-9393-1-1.html

Sistem telah menentukan sebelumnya ValidationAttribute
Sekumpulan fitur validasi yang mewarisi dari ValidationAttribute ditentukan di bawah namespace System.ComponentModel.DataAnnotations.

  • RequiredAttribute: Digunakan untuk memvalidasi bidang data yang diperlukan.
  • RangeAttribute: Digunakan untuk memverifikasi bahwa nilai bidang numerik berada dalam rentang yang ditentukan.
  • StringLengthAttribute: Digunakan untuk memverifikasi bahwa panjang string bidang target berada dalam rentang yang ditentukan.
  • MaxLengthAttribute/MinLengthAttribute: Digunakan untuk memverifikasi apakah panjang kamus karakter/array kurang dari/lebih besar dari batas atas/bawah yang ditentukan.
  • RegularExpressionAttribute: Digunakan untuk memverifikasi bahwa format bidang string cocok dengan ekspresi reguler yang ditentukan.
  • CompareAttribute: Digunakan untuk memverifikasi apakah nilai bidang target konsisten dengan nilai bidang lain, dan dapat digunakan untuk mengonfirmasi konsistensi memasukkan kata sandi dua kali dalam skenario pendaftaran pengguna.
  • CustomValidationAttribute: Menentukan jenis validasi dan metode validasi untuk memvalidasi anggota target.



Tentu saja, kita juga dapat menentukan aturan untuk validasi dengan mewarisi kelas ValidationAttribute dan menerapkan metode yang sesuai.

Mari kita lihat renderingnya terlebih dahulu, pesan kesalahan dikembalikan oleh antarmuka latar belakang, sebagai berikut:



Kode Model Objek:

Kode filter ModelStateFilter:



Kode IsAjaxRequest adalah sebagai berikut:

Terakhir, tambahkan filter kustom ke file Startup, kodenya adalah sebagai berikut:



(Akhir)




Mantan:HtmlAgilityPack mengurai kiat HTML untuk rollup
Depan:.NET Core memanggil Baidu PaddleOCR untuk mengenali gambar dan teks
Dipaparkan pada 2021-9-22 20:40:25 |
Belajar untuk belajar...
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com