Assignment 02 RentingCarManagement V5
Assignment 02 RentingCarManagement V5
1. Introduction
Imagine you're an employee of a product retailer named FUCarRenting. Your manager has
asked you to develop a Windows Forms application for customer management, cartoon
management, and car renting management. The application has a default account whose email is
“admin@FUCarRentingManagement.com” and password is “@@admin@@” that stored in
the appsettings.json.
The application has to support adding, viewing, modifying, and removing items—a standardized
usage action verb better known as Create, Read, Update, Delete (CRUD) and Search. This
assignment explores creating an application using Windows Forms with .NET Core, C#, and
ADO.NET / Entity Framework. The MS SQL Server database will be created to persist the data
and it will be used for reading and managing data.
2. Assignment Objectives
In this assignment, you will:
Use the Visual Studio.NET to create Windows Forms and Class Library (.dll) projects.
Develop MDI (Multiple Document Interface) application using WinForms.
Perform CRUD actions using ADO.NET and Entity Framework Core
Use LINQ to query and sort data
Apply passing data in WinForms application
Apply 3-layers architecture to develop an application
Apply MPV (Model-Presenter-View) pattern in WinForms application
Apply Repository pattern and Singleton pattern in a project
1|Page
Add CRUD and searching actions to WinForms application.
Apply to validate data type for all fields
Run the project and test the WinForms actions.
3. Database Design
A car will belong to only one manufacturer and only one supplier.
A customer can make renting transaction in this system many times. A renting transaction will
have one or many car information. A car information will belong to many renting transactions.
2|Page
4. Main Functions
Member (Admin/Customer) authentication by Email and Password. If the user is
“Admin” (get from appsettings.json file) then allows to perform all actions, otherwise,
the customer (get from the Customer table in database) is allowed to view/create/update
the profile and view their transactions history.
Customer management, Car management, and Renting management: Read, Create,
Update and Delete actions. Creating and Updating actions must be performed by popup
dialog. One renting transaction will have many car with difference time (start/end); one
car will have in many renting transaction.
Search car by ID, name (by keyword of CarName), CarRentingPricePerDay.
Create a report statistics sales by the period from StartDate to EndDate, and sort the
results in descending order.
5. Guidelines
Activity 01: Build a solution
Step 01. Open the Visual Studio .NET application and create a Blank solution named
Ass02Solution_ClassCode_StudentName
3|Page
Activity 02: Develop BusinessObjects project
4|Page
Activity 04: Develop Repositories project
Activity 06: Run the WinForms project and test all actions
5|Page