Please read each note very carefully! Feel free to add/change the project structure to a clean architecture to your view. and if you are not able to work on the FrontEnd project, you can add a Swagger UI in a new Front project.
Create a simple CRUD application with .NET that implements the below model:
Customer {
FirstName
LastName
DateOfBirth
PhoneNumber
Email
BankAccountNumber
}
- TDD
- BDD
- DDD
- Clean architecture
- CQRS pattern (Event sourcing).
- Clean git commits that show your work progress, each commit must provide your decision making process for each change or selection.
-
During Create; validate the phone number to be a valid mobile number only (Please use Google LibPhoneNumber to validate number at the backend).
-
A Valid email and a valid bank account number must be checked before submitting the form.
-
Customers must be unique in the database: By
Firstname
,Lastname
, andDateOfBirth
. -
Email must be unique in the database.
- Store the phone number in a database with minimized space storage (choose
varchar
/string
, orulong
whichever store less space).
- Please clone this repository in a new GitHub repository in private mode and share with ID:
mason-chase
in private mode on github.com, make sure you do not erase my commits and then create a pull request (code review).
- Blazor Web.
- Docker-compose project that loads database service automatically which
docker-compose up