- Bir ASP.NET Core Web API tüketen ikinci ASP.NET Core MVC uygulamam
- Bir sitenin sakinlerinin ve faturalarının yönetimini amaçlar.
- WebAPI tarafında Onion Architecture kullanıldı.
- WebAPI tarafında Optimal Repository Design Pattern kullanıldı.
- WebAPI tarafında MediatR Kütüphanesi ile CQRS Pattern kullanıldı.
- WebAPI tarafında mapping işlemleri için AutoMapper, doğrulama kuralları için FluentValidation kütüphaneleri kullanıldı.
- Veri tabanı tohumlandı ve ilişkisel hale getirildi.
- Veri tabanı için abstract bir BaseEntity kullanıldı.
- IEntityTypeConfiguration Interface'i ile veri rabanı konfigürasyonu sağlandı.
- EF Core Tracking Performans Optimizasyonu sağlandı.
- Ekleme ve güncellme işlemleri yaparken bu işlemlerin yapılış tarihlerini kaydetmeyi otomatik hale getiren isteğe uyarlanmış SaveChangeAsync yazıldı.
- Kimlik doğrulama ve yetkilendirme işlemleri için Microsoft.AspNetCore.Identity.EntityFrameworkCore kütüphanesi kullanıldı.
- Admin ve User olmak üzere iki tip kullanıcı eklendi.
- Haberleşen iki veya daha fazla sistem arasında kullanıcı doğrulama, kullanıcı tanıma ve veri bütünlüğünü sağlayabilmek adına Json Web Tokens kullanıldı.
- Controller sınıflarını daha temiz hale getiren bir BaseController kullanıldı.