CRUD Code Test

Please read each note very carefully! Feel free to add/change project structure to a clean architecture to your view. and if you are not able to work on FrontEnd project, you can add a Swagger UI in a new Front project.

Create a simple CRUD application with ASP NET that implements the below model:

Customer {
	Firstname
	Lastname
	DateOfBirth
	PhoneNumber
	Email
	BankAccountNumber
}

Practices and patterns (Must):

Validations (Must)

  • 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 database: By Firstname, Lastname and DateOfBirth.

  • Email must be unique in the database.

Storage (Must)

  • Store the phone number in a database with minimized space storage (choose varchar/string, or ulong whichever store less space).

Delivery (Must)

  • 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).

Nice to do:

  • Blazor Web.
  • Docker-compose project that loads database service automatically which docker-compose up