.Net Core Eğitimleri

3-) Common Katmanı

Başlarken

Projenin ana yapısını oluşturduktan sonra şimdi sırada Common katmanı ‘nın genel hatlarını oluşturmak var. Bir önceki  post ‘u takip ederek işlemler doğru yaptıysak Solution Explorer üzerinde aşağıdaki görüntüyü görüyor olmalıyız.

Common katmanın yapısının oluşturulması - Mehmet Ali EROL
Common katmanın yapısının oluşturulması

Common Katmanı ‘na Giriş

Öncelikle bu katman içerisinde kullanacağımız kodları gruplamak için klasörler oluşturacağız. Klasör oluşturmak için Solution Explorer tabının içinden Common projemizin adına sağ tıklıyoruz ve sırası ile “Add” –> “Folder” seçeneklerine tıklıyoruz.

Oluşturacağımız Klasörler

1- ) Api -> Bu kısımda api ile ilgili genel tanımlamaları yapacağız. Api result, api base gibi sınıfları bu kısımda kodlayacağız.
2- ) Data -> Bu klasör bizim Data katmanı içerisinde saklayacağımız entityleri’mizin ortak özelliklerini tutacak.
3- ) Dto -> Data transfer objectlerimize ait base class ve ortak özellikleri içeren class lar bu klasörde olacak.
4- ) Enums -> Proje genelinde kullanacağımız enumları barındıracak.
5- ) Logging -> Loglama işlemleri ile ilgili ayarlar ve temel özellikler bu kısımda yer alacak
6- ) Paging -> Sayfalama işlemlerinin çekirdeği bu kısımda yer alacak.
7- ) Repository -> Repository pattern için gerekli classları barındıracak.
8- ) UnitofWork -> Repository pattern ile kullanacağımız UnitofWork mantığı bu klasörde tutulacak.

Başlangıç olarak tüm klasörleri aynı şekilde tek tek oluşturacağız ancak sadece Api,Data,Dto ve Enums klasörleri altına classlar ekleyeceğiz. Diğer klasörlerin altını konuları geldiğinde doldurup projeye dahil edeceğiz. Yukarıdaki adımları uyguladığınız da Solution Explorer aşağıdaki gibi görünüyor olmalıdır.

Common katmanının yapısı - Mehmet Ali EROL
Common katmanının yapısı

ApiResult Sınıfı

Şimdi Solution Explorer üzerinden Common katmanımızın altında kalan Api klasörümüze sağ tıklayarak altına bir class ekleyeceğiz. Ekleyeceğimiz sınıf restful WebApimizin geriye dönüş standartını belirleme görevi görecek. İstemcilerden gelen tüm isteklere ApiResult sınıfımız ile dönüş yapacağız. Bu sınıf içerisinde 3 adet property olacakve çok biçimlilik(polymorphism) özelliği bulunacak. Aşağıdaki ekran görüntülerini takip ederek ApiResult.cs dosyamızı oluşturalım.

ApiResult sınıfının oluşturulması - Mehmet Ali EROL
ApiResult sınıfının oluşturulması
ApiResult sınıfının oluşturulması 2 - Mehmet Ali EROL
ApiResult sınıfının oluşturulması 2

ApiResult sınıfımızı oluşturduktan sonra içerisini aşağıda görünen şekilde düzenliyoruz. Kodun içerisinde summaryler kullanarak detaylı açıklamalar yapmaya çalıştım.

Base Sınıflarının ve Durum Enum’ının Oluşturulması

Aynı şekilde Common katmanı altında kalan Data klasörüne EntityBase sınıfını, Dto klasörüne DtoBase sınıfını ve Enum klasörüne AppStatus enum’ını oluşturuyoruz.

EntityBase.Cs

DtoBase.cs

AppStatus.cs

Sonuç

Buraya kadar olan tüm işlemleri doğru bir şekilde yaptıysanız Solution Explorer üzerinde aşağıda bulunan görüntüyü görüyor olmalısınız.

Common katmanı giriş dersi sonunda oluşan görüntü - Mehmet Ali EROL
Common katmanı giriş dersi sonunda oluşan görüntü

Projenin son halini github üzerinden indirmek ve incelemek için bu linke tıklayabilirsiniz. Bir sonraki derste EntityFramework 6 (bundan sonra EF olarak anacağız) ile code first yaklaşımını kullanarak veritabanı tasarımımızı yapacak ve aynı zamanda entitylerimizi oluşturmuş olacağız. Bu kısım için yaşadığınız bir sorun ya da sormak istediğiniz bir soru varsa yorum kısmında ya da mail adresim üzerinden iletebilirsiniz.
Mail adresim : mehmetalierol@windowslive.com

<- Önceki Post – Sonraki Post ->


Notice: compact(): Undefined variable: limits in /home/u9405026/public_html/wp-includes/class-wp-comment-query.php on line 853

Notice: compact(): Undefined variable: groupby in /home/u9405026/public_html/wp-includes/class-wp-comment-query.php on line 853

Leave a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir