Veritabanı nesneleri için oluşturulmuş Entities Katmanı'nda DTO's ve Concrete olmak üzere iki adet klasör bulunmaktadır. DTO's klasörü veri aktarım dosyalarını, Concrete klasörü ise somut nesneleri tutmak için oluşturulmuştur.
Sunum katmanından gelen bilgileri gerekli koşullara göre işlemek veya denetlemek için oluşturulan Business Katmanı'nda Abstract, Concrete, Utilities ve ValidationRules olmak üzere dört adet klasör bulunmaktadır. Abstract klasörü soyut nesneleri, Concrete klasörü somut nesneleri tutmak için oluşturulmuştur. Utilities ve ValidationRules klasörlerinde validation işlemlerinin gerçekleştiği classlar mevcuttur.
Veritabanı CRUD işlemleri gerçekleştirmek için oluşturulan Data Access Katmanı'nda Abstract ve Concrete olmak üzere iki adet klasör bulunmaktadır. Abstract klasörü soyut nesneleri, Concrete klasörü somut nesneleri tutmak için oluşturulmuştur.
Bir Framework katmanı olan Core Katmanı'nda DataAccess, Entities, Utilities olmak üzere 3 adet klasör bulunmaktadır. DataAccess klasörü DataAccess katmanı ile ilgili nesneleri, Entities klasörü Entities katmanı ile ilgili nesneleri tutmak için oluşturulmuştur. Core katmanının .Net Core ile hiçbir bağlantısı yoktur. Oluşturulan Core katmanında ortak kodlar tutulur. Core katmanı ile, kurumsal bir yapıda, alt yapı ekibi ilgilenir.
⚠ DİKKAT ⚠
Core Katmanı, diğer katmanları referans almaz.
Prototip E- Ticaret Projemiz Northwind Database ile çalışmaktadır. İlgili veritabanını sistemimize entegre etmek için Visual Studio 2022'de View > SQL Server Object Explorer menü yolunu takip edebilirsiniz. Pencere açıldıktan sonra SQL Server > (localdb)MSSQLLocalDB altındaki Databases klasörüne sağ tıkladıktan sonra, Add New Database seçeneğine tıklayıp içerisine https://raw.githubusercontent.com/microsoft/sql-server-samples/master/samples/databases/northwind-pubs/instnwnd.sql
adresinden kopyaladığınız veritabanını yapıştırarak veritabanınızı update edebilirsiniz.
-
Restful API
-
Result Types
-
Interceptor
-
Autofac
-
AOP(Aspect Oriented Programming)
-
Fluent Validation
-
Repository Design Pattern
-
Cross Cutting Concerns
-
JWT Authentication
-
Cache
-
Transaction
-
Performance
-
Log
-
Exception Handling
-
...