Burada modellerin Property alanlarına validasyon uyarılarını yazacağız. Bunun için Model katmanındaki MetaDataTypes klasörünün altına validasyona sahip olan her bir model için class açmamız gerekiyor. İsimlendirme için ise modelismi+MetaData yazabiliriz. Örneğin user modeli için UserMetaData olabilir
MetaData class siçine modeldeki sadece validasyon uyarısı olan propertyleri alacağız.
GasMetaData.cs
public class GasMetaData
[Required(ErrorMessage ="Lütfen Gaz Türünü Seçiniz!")]
public GasType GasTypes { get; set; }
[Required(ErrorMessage = "Lütfen seçili olan gaz türünün Litre Fiyatını Giriniz")]
public float Prince { get; set; }
}
Gas Modeline gelip senin validasyon uyarıların burada dememeiz gerekiyor.
Gas Model en üstüne aşağıdaki komutu ekleyelim, Eğer ctrl+. ile kütüphaneyi görmüyor ise Mifrosoft .Mvc Core kütüphanesini nuget manege ile Model katmanına yükleyin.
[ModelMetadataType(typeof(GasMetaData))]
Şimdi sırayla tüm model validasyonları yazalım.
public class PaymentMetaData
{
[Required(ErrorMessage = "Lütfen Ödeme Türünü Seçiniz!")]
public PaymentType Ptype { get; set; }
}
Payment Model;
public class SalesMetaData
{
[Required(ErrorMessage = "Lütfen Gaz Türünü Seçiniz!")]
public string PumpNo { get; set; }
[Required(ErrorMessage = "Lütfen Araç Plakasını Giriniz")]
[MaxLength(8, ErrorMessage = "en fazla 8 karakter")]
[MinLength(6, ErrorMessage = "en az 6 karakter")]
public string Plate { get; set; }
[Required(ErrorMessage = "Lütfen LitreMiktarını Giriniz!")]
public float Liter { get; set; }
}
Sales Model:
[ModelMetadataType(typeof(SalesMetaData))]
StationMetaData.cs
{
[Required(ErrorMessage = "Lütfen İstasyon İsmini Giriniz")]
[MinLength(3, ErrorMessage = "En az 3 karakter")]
public string StationName { get; set; }
[Required(ErrorMessage = "Lütfen İL Bilgisini Giriniz")]
public string City { get; set; }
}
Hiç yorum yok:
Yorum Gönder