Skip to content

IvanStrok23/Mono-InterviewTask

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 

Repository files navigation

MonoTask

Job application task

Summary

develop a minimalistic application of your choice by following technologies and concepts mentioned above and requirements defined below.

Requirements

Create a database with the following elements

  • VehicleMake (Id,Name,Abrv) e.g. BMW,Ford,Volkswagen
  • VehicleModel (Id,MakeId,Name,Abrv) e.g. 128,325,X5 (BWM)

Create the solution (back-end) with the following projects and elements

  • Project.Service
    • EF models for above database tables
    • VehicleService class - CRUD for Make and Model (Sorting, Filtering & Paging)
  • Project.MVC
    • Make administration view (CRUD with Sorting, Filtering & Paging)
    • Model administration view (CRUD with Sorting, Filtering (by make) & Paging)

Implementation details

  • async/await should be enforced in all layers (async all the way)
  • all classes should be abstracted (have interfaces so that they can be unit tested)
  • IoC (Inversion of Control) and DI (Dependency Injection) should be enforced in all layers (constructor injection preferable)
  • Ninject DI container should be used (https://github.com/ninject/ninject/wiki)
  • Mapping should be done by using AutoMapper (http://automapper.org/)
  • EF 6, Core or above with Code First approach (EF Power Tools can be used) should be used
  • return view models rather than EF database models return proper Http status codes

About

Job application task

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published