Forms & Validation
Penjelasan
EditForm adalah component bawaan Blazor untuk form dengan validasi terintegrasi — dipasangkan dengan Model (class data biasa yang propertinya ditandai atribut DataAnnotations seperti [Required], [StringLength]) dan <DataAnnotationsValidator />, otomatis memvalidasi saat submit tanpa kode validasi manual.
Contoh Konsep
@* Model.cs *@
@* public class ProdukModel
{
[Required(ErrorMessage = "Nama wajib diisi")]
[StringLength(100, MinimumLength = 3)]
public string Nama { get; set; } = "";
} *@
<EditForm Model="produk" OnValidSubmit="HandleSubmit">
<DataAnnotationsValidator />
<ValidationSummary />
<InputText @bind-Value="produk.Nama" />
<button type="submit">Simpan</button>
</EditForm>
@code {
private ProdukModel produk = new();
private void HandleSubmit()
{
// dipanggil HANYA kalau validasi lolos
}
}
Praktikum
Buat class ArtikelModel dengan properti Judul ([Required], [StringLength] minimal 5 karakter). Buat EditForm dengan InputText untuk Judul, DataAnnotationsValidator, dan ValidationSummary, terhubung ke OnValidSubmit.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
OnValidSubmit HANYA dipanggil kalau SEMUA aturan validasi lolos — kalau kamu butuh logika yang berjalan TERLEPAS dari valid/tidaknya (mis. logging setiap percobaan submit), pakai OnSubmit biasa dan cek EditContext.Validate() manual di dalamnya.