WebShopMVC is a full-stack eCommerce application built with C# and .NET 10, using ASP.NET Core MVC, SQL Server, and Entity Framework Core (Code-First).
It includes authentication and authorization with ASP.NET Identity, an admin area for managing catalog content, and complete shopping cart and checkout workflows.
The project is structured with a clean, maintainable architecture, emphasizing clear separation of concerns, predictable data workflows, and an extensible codebase.
- C# / .NET 10
- ASP.NET Core MVC
- SQL Server
- Entity Framework Core (Code-First + Migrations)
- ASP.NET Identity
- Razor Views
- LINQ
- Dependency Injection
- Authentication and authorization with ASP.NET Identity (registration, login, role-based access)
- Admin area for managing products, categories, and images
- Product catalog workflows with structured CRUD operations
- Shopping cart with persistence (session-based and/or user-based, depending on configuration)
- Checkout workflow with order creation and storage
- Filtering, sorting, and pagination using LINQ
- Database migrations and relational modeling using Entity Framework Core
- Layered structure with repository and service layers for maintainable data access and business logic
- MVC structure with clear controller/view separation
- Repository and service layers to isolate business logic and persistence
- Centralized configuration via
Program.csandappsettings.json - Modular folder structure for clarity and maintainability
Note: This project applies Clean Architecture principles where they improve maintainability and separation, while keeping implementation practical and easy to follow in an MVC application.
- .NET SDK 10
- SQL Server (local or Docker)
- (Optional) Visual Studio 2022 or Rider
-
Clone the repository
git clone https://github.com/alanracic/WebShopMVC.git -
Configure the connection string in
appsettings.json -
Apply migrations and create the database
dotnet ef database update -
Run the application
dotnet run
Areas/Admin— admin controllers and viewsControllers— user-facing MVC controllersData— database context, migrations, persistence setupModels— domain models / entitiesRepositories— data-access layer abstractions and implementationsServices— business logic and workflowsViews— Razor UI
C# · .NET 10 · ASP.NET Core MVC · SQL Server · Entity Framework Core · ASP.NET Identity · LINQ · Dependency Injection · Repository Pattern · Razor Views · Web application architecture
Actively maintained and iteratively improved as part of a professional .NET portfolio, with emphasis on clean structure, reliable data workflows, and production-oriented patterns.