A scalable ASP.NET Core Web API built using Onion Architecture for managing an e-commerce platform. The solution is structured into four independent projects with clear separation of concerns, enabling maintainability, scalability, and clean dependency management.
- Built using ASP.NET Core Web API and Entity Framework Core
- Structured using Onion Architecture with four independent projects
- Implemented Repository, Generic Repository, and Unit of Work patterns
- Applied Dependency Injection throughout the application
- Secured the API using JWT Authentication
- Integrated Redis for shopping cart caching
- Asynchronous database operations with Entity Framework Core
- SQL Server as the primary database
E_Commerce.API
(Controllers, Middleware, Program.cs)
│
▼
E_Commerce.Application
(Services, Business Logic, Interfaces)
│
▼
E_Commerce.Domain
(Entities, Contracts, Business Models)
▲
│
E_Commerce.Infrastructure
(EF Core, DbContext, Repositories, Identity,
Migrations, Seeding, External Services)
SQL Server Database
+
Redis Cache
E_Commerce.sln
├── E_Commerce.Domain
│ ├── Entities
│ └── Contracts (Interfaces)
│
├── E_Commerce.Application
│ ├── Service Interfaces
│ └── Service Implementations
│
├── E_Commerce.Infrastructure
│ ├── DbContext
│ ├── Repository Implementations
│ ├── Unit of Work
│ ├── Entity Configurations
│ ├── Migrations
│ └── Data Seeding
│
└── E_Commerce.API
├── Controllers
├── Middleware
├── Program.cs
└── Dependency Injection
- ASP.NET Core Web API
- C#
- Entity Framework Core
- SQL Server
- Redis
- JWT Authentication
- ASP.NET Identity
- LINQ
- Onion Architecture
- Repository Pattern
- Generic Repository Pattern
- Unit of Work Pattern
- Specification Pattern
- Dependency Injection
- User Authentication & Authorization (JWT)
- Product Management
- Brand & Type Management
- Shopping Cart
- Order Processing
- Redis Shopping Cart Cache
- Product Filtering & Pagination
- Entity Framework Core Migrations
- Database Seeding
This project demonstrates enterprise-level backend development using ASP.NET Core Web API and Onion Architecture. It emphasizes separation of concerns by organizing the solution into Domain, Application, Infrastructure, and API layers with inward-only dependencies. The project showcases scalable API development, secure JWT authentication, Repository and Unit of Work patterns, Specification Pattern, Redis caching, and clean software architecture principles commonly used in modern .NET applications.