- Visual Studio 2013 or newer
- PostgreSQL 9.3 or newer
There are must be database named 'PMS' with owner 'postgres' whose password 'postgres'
-
Execute
psql -U postgres -d PMS -a -f setup.sql
-
Execute
psql -U postgres -d PMS -a -f data.sql
- Open project solution Project_DMD.sln
- Build project(it should install needed Nuget packages)
- Start app
Look tutorial here
Firstly, we implemented interfaces for working with fake data which stores in memory and uses LINQ for manipulation with data. Using this ‘fake’ interfaces we could develop front-end despite of that we don’t work with db. In parallel with front-end we implemented interfaces for working with ‘true’ data in database.
Controllers handle requests and calls methods of IDataRepository and IUserRepository interfaces. For developing front-end we used fake repositories(FakeDataRepository, FakeAppUserRepository) which works with data in CPU and uses LINQ to operate with data. In same time we were implementing true repositories(DataRepository, AppUserRepository) they call QueryExecutor which executes hand-written and auto generated sql queries. For simple models we didn't write queries, we developed AutoSqlGenerator for that case.