Mô tả cách thức chương trình hoạt động:
- Khi người dùng truy cập website, yêu cầu HTTP được định tuyến tới các controller trong thư mục Controllers/.
- Controllers nhận request, xử lý logic cơ bản, gọi các service trong Services/ để thao tác dữ liệu (CRUD, nghiệp vụ).
- Services sử dụng Entity Framework Core để truy xuất và thao tác dữ liệu với các entity được định nghĩa trong Models/.
- Dữ liệu được lấy từ PostgreSQL thông qua ApplicationDbContext, các migration trong Migrations/ đảm bảo cấu trúc DB luôn đồng bộ với code.
- Kết quả xử lý được trả về view (Razor) trong Views/, nơi dữ liệu được render thành HTML gửi về trình duyệt.
- Các file tĩnh như CSS, JS, hình ảnh được phục vụ từ wwwroot/.
- Dữ liệu mẫu (ví dụ đơn vị tính) có thể được seed tự động từ SeedData/ khi khởi động ứng dụng.
- Toàn bộ cấu hình, kết nối DB, DI, session... được thiết lập trong Program.cs.
- Quản trị viên có thể thêm/sửa/xóa sản phẩm, đơn vị tính, danh mục... qua giao diện quản trị (Views/Admin/).
- Người dùng có thể tìm kiếm, đặt hàng, quản lý giỏ hàng, theo dõi đơn hàng qua các chức năng ở Views/Shop/ và Views/Home/.
- Các tài liệu hướng dẫn, đặc tả, quy trình commit... được lưu ở Documentation/.
Luồng hoạt động tiêu biểu:
1. Người dùng truy cập trang chủ → HomeController trả về view.
2. Người dùng tìm kiếm sản phẩm → ShopController gọi ProductService lấy dữ liệu, trả về view với kết quả tìm kiếm.
3. Người dùng thêm sản phẩm vào giỏ → CartService lưu thông tin vào session.
4. Người dùng đặt hàng → OrderService tạo đơn hàng, lưu vào DB, cập nhật trạng thái.
5. Quản trị viên đăng nhập, quản lý sản phẩm, đơn vị tính, danh mục... qua giao diện quản trị.
Mọi thao tác đều tuân thủ nguyên tắc: Controller nhận request, Service xử lý nghiệp vụ, Model đại diện dữ liệu, View hiển thị kết quả.
XEM THÊM ==> Hướng dẫn cài đặt chi tiết
Nguồn: Sharecode.vn
- Tải đầy đủ source code và backup database
- Cài đặt PostgreSQL, restore lại database bằng file CSDL.sql
- Chạy Project bằng VSCode
- Thay đổi chuỗi kết nối trong appsettings.Development.json và appsetting.json
- Chạy project: dotnet restore > dotnet build > dotnet run