ASP.NET Core Web Api built using essential features as a Bank application!
This project has been retired and is no longer maintained. It was built as a learning project end of 2022 to understand the concepts of Clean Architecture together with Dapper as ORM and MediatR as CQRS library. The intended purpose was to build a simple bank application, where you can create accounts, deposit and withdraw money, and transfer money between accounts.
Nothing in the project is production ready, and it is not intended to be used as such. Be free to use the code as you wish, but be aware that it is not maintained and will not be updated.
The database calls are made using Stored Procedures, which are found in the root directory of the project. Creation of database and tables are not included in the project, therefor no seedData After requests I have added instructions on how to run the project.
With Docker: This will create a container with the application and a container with a SQL Server database. Make sure that you have Docker installed on your machine & running.
- Clone the repository
- In root directory run
docker compose up
Without Docker:
- Clone the repository
- In root directory run
dotnet restore
- In root directory run
dotnet build
- In root directory run
dotnet run --project BankApplication.Presentation/BankApplication.WebApi
- ASP.NET Core 7 WebApi
- REST Standards
- Onion Architecture
- CQRS with MediatR Library
- Dapper
- StoredProcedures SQL
- Repository Pattern - Generic
- Global Error Handling - RFC
- Options Pattern
- MediatR Pipeline Logging & Validation
- Swagger UI
- JWT Authentication
- Role based Authorization
- Custom Exception Handling Middlewares
- API Versioning
- Mapster