-
Call bus (mediator) to handle Request/Response informations
-
Receives and reponds DTOs (Data Transfer Objects) to clients
-
Using OWIN as interface between API and IIS
-
Using Swagger library for documentation of the API (UI accessible through http://localhost:53070/swagger/)
-
Contain Models.
-
Contains Commands, Queries and their Handlers (Using MediatR library).
-
Call Data layer to retrieve/persist informations.
-
Using Entity Framework as ORM for data access.
-
Using Code First approach.
-
Automatically creates Database and seed data in the first execution.
-
Using AsNoTracking for better performance on retrieving data.
-
Domain Driven Design: Layers and Domain Model patterns applied.
-
CQRS (Command Query Responsability Segregation) through MediatR library.
-
Repository Pattern: Data layer.
-
Dependendy Injection Pattern.
-
AutoMapper: Handle mappings.
-
EntityFramework: Microsoft ORM.
-
MediatR: In-process messaging.
-
OWIN: Decouple web server and web application.
-
Swashbuckle: Swagger implementation for .NET, documentation for API.
-
IdentityServer4: Handles OAuth2 authentication