An ASP.NET Core MVC restaurant management system designed to manage menu items, customer orders, user accounts, and administrative operations through a structured web application.
Restaurant Management System is a web-based application built with ASP.NET Core MVC and Entity Framework Core.
The project provides a restaurant-facing application with user account functionality, multilingual support, and a dedicated Admin Area for managing restaurant orders and menu items.
- User account and login functionality
- Restaurant website interface
- Multilingual support
- Responsive web interface
- Menu and restaurant-related pages
- Dedicated Admin Area
- Order management
- Create and manage restaurant orders
- Manage order details and quantities
- Work with menu items
- Automatic calculation of order totals
- Delete orders and their related details
- Separate Admin Controllers, Models, and Views
- C#
- ASP.NET Core MVC
- Entity Framework Core
- SQL Server
- ASP.NET Core Identity
- Razor Views
- HTML5
- CSS3
- Bootstrap
- JavaScript
- Font Awesome
- Localization / Resources
Restaurantproject/
│
├── Areas/
│ └── Admin/
│ ├── Controllers/
│ │ └── OrderController.cs
│ │
│ ├── Models/
│ │ ├── MenuItem.cs
│ │ ├── Order.cs
│ │ ├── OrderDetail.cs
│ │ └── OrderViewModel.cs
│ │
│ └── Views/
│ ├── Order/
│ │ └── Orders.cshtml
│ └── Shared/
│
├── Controllers/
│ ├── HomeController.cs
│ ├── LanguageController.cs
│ └── UserController.cs
│
├── Migrations/
│
├── Models/
│ ├── ApplicationDbContext.cs
│ ├── ErrorViewModel.cs
│ ├── UserAccount.cs
│ └── loginAcc.cs
│
├── Resources/
├── Views/
├── wwwroot/
│
├── Program.cs
├── Resource.cs
└── Restaurantproject.csproj
The application follows the Model-View-Controller (MVC) architecture.
- Models handle application data and database-related entities.
- Views provide the user interface using Razor.
- Controllers handle application requests and business flow.
- Admin Area separates administrative functionality from the main application.
- Entity Framework Core provides database access and migrations.
The Admin order management functionality is built around three main entities:
MenuItem
│
└── OrderDetail
│
└── Order
An order can contain multiple order details, with each detail associated with a menu item and quantity.
The system calculates the total order amount based on the selected menu items and their quantities.
The project uses Entity Framework Core for database access and includes EF Core migrations for database schema management.
The main database context is:
ApplicationDbContext
The application includes localization support through:
LanguageController
Resources/
This allows the application to support multiple languages and provides a foundation for localized user interfaces.
Make sure you have:
- .NET 8 SDK
- Visual Studio 2022 or later
- SQL Server
- SQL Server Management Studio or another SQL Server client
Clone the repository:
git clone https://github.com/anwar-dotnet-stack/Restaurant-Management.gitOpen the project in Visual Studio and restore the required NuGet packages.
Configure the database connection in:
appsettings.json
Apply the Entity Framework Core migrations to create/update the database.
Then run the application from Visual Studio.
This project was developed as a practical ASP.NET Core MVC application to demonstrate experience with:
- MVC architecture
- Entity Framework Core
- Database-driven applications
- User authentication
- Admin functionality
- Order management
- Razor Views
- Localization
- Responsive web development
Anwar Ajajj
Full Stack .NET Developer
This project is for educational and portfolio purposes.