MODEL KATMANI
Burada Modellerimizi tutan bir Entities Klasörü olmalı. projeye sağ tıklayarak Entities kalsörü açalım.
Sonrasında veri tabanına bağımlı olmayan ama uı katmanında view sayfalarına göre özelleştirilmiş modellerimiz için Dto klasörü açmalıyız.
Birde bu katmanda sabit değişken dediğimiz enum yapılarımız içinde enum klasörü açılmalı.
Şuanda model yazmayacağız sadece kullanılabilecek yapıları hazırlıyoruz. Code first yaklaşımına geçtiğimizde projemize uygun olan modellerimizi bu katmanda hazırlamamız gerekecek.
Enums klasörü altına DataStatus olarak enum oluşturalım, Verilerin eklenme silinme ve güncelleme durumlarına karşılık gelebilsin. Entity klasörüne sağ tıklayarak bir tane class ekleyelim(DataStatus)
Burada tüm modellerde yer alacak olan propertyler için base entity açabilirz. Sonra ekleyeceğimiz modeller bu base entity den miras alabilir.
public enum DataStatus
{
Inserted=1,Updates=2,Deleted=3
}
Entity klasörüne sağ tıklayarak bir tane class ekleyelim(BaseEntity)
public abstract class BaseEntity
{
public BaseEntity()
{
Status = DataStatus.Inserted;
CreatedDate = DateTime.Now;
}
public int ID { get; set; }
public DataStatus Status { get; set; }
public DateTime CreatedDate { get; set; }
public DateTime ModifiedDate { get; set; }
}
Bu base entity sonrada açaçağımız tum modellere olması gereken propertyleri tutuyor.
Birde Entities klasörü altına MetaDataTypes adında bir kalsör açalım. Bu klasörde her bir modele ait class açacağız. Çünkü .net core yapısındaki string ifade veriatabanında birden çok karşılığı olan varchar , nvarchar olabilir, boyutunu ayarlamak isteyebiliriz. Sql server yapısında zorunlu olmasını isteyebiliriz. Tüm bu yaraları bu klasör altındaki modele ait classlarda vermemiz gerekiyor.
Tüm bunları yaptığımızda katmanımızın son durumu aşağıdaki gibi olacaktır.
MAP KATMANI
Bu katmanda FluentApi kullanarak modellerin validasyonlarını gerçekleştirmemiz gerekiyor. Bunun için katman altına Configuration klasörü açalım. Bu katmanda fluentpi kullanabilmek için core kütüphanesini indirmemiz gerekiyor. Katmana sağ tıkla, nuget manage packages tıkla, entity framework core.sql server kütüphanesini indirelim.
Modellerimizi oluşturduktan sonra bu katmana geri dönüp modellerimizin validasyonlarını yazacağız. şimdilik katmanımızın son durumu aşağıdaki gibidir.
Hiç yorum yok:
Yorum Gönder