IT College, 2016/2017 Spring ASP.NET WebApps course Create an account at http://git.akaver.com Please use your full (first and last) name in Name field! All your projects in this course shoud be in this git group: Daytime students: http://git.akaver.com/admin/groups/itk-aspnet-daytime-2016 Distance students: http://git.akaver.com/admin/groups/itk-aspnet-distance-2016 You have to do one fairly big and complex project. I'll try to divide this project into as many smaller checkable parts as possible - often it is not possible. Every project sub part will give 0-100 points. Late entries will have max 25% (0-25) of the points. All the project parts are mandatory. At the end you'll have to collect more than 50% of the points. Part 1 1) In your git project create readme.md and describe your project idea with few sentences. 2) Create your domain entities and relationships. Semi-hard requirement is at least 10 classes (not including many-to-many inbetween tables and tables for user management). Add your tables to DbContext and create database with migration. Check, that there are no extra tables or fields created by EF. 3) All deviations from standards have to be coordinated with teacher (bigger project teams, different technology, smaller quantity of tables, etc....) 4) Please use english as your primary language - comments, properties, readme, etc. Distance learners: Please watch following echo recordings: https://echo360.e-ope.ee/ess/echo/presentation/c158a292-d72e-4e12-8237-48715d7490a6 https://echo360.e-ope.ee/ess/echo/presentation/49f647ec-4fb3-4f97-826a-0df599ce8cf8 Part 2 Create generic base interface and generic base EF Repository. Create interfaces and repos for all your domain classes. Please keep all the items in suitable sub-projects (class library) in your solution. Deadline for Part 1 and Part 2: Distance learners 2017-03-16 23:59:59 Daytime students 2017-03-16 23:59:59 Part 3 Implement in your project everything done in practices and demo project repos, uow, dependency injection, seeding, db droping, connection with asp.net core identity generate all the controllers against dbsets, modify them to use uows/repos Add links to your controllers into view template, use drop-downs (see bootstrap documentation about navigation drop-downs) Distance learners - please watch all the latest daytime lecture recordings from echo360 Deadline for part 3 Daytime 2017-04-05 23:59:59 Distance 2017-04-05 23:59:59 Part4 New public asp.net base project is located here: https://github.com/akaver/AspNetCore-BaseWebApp (with identity storage rewrite using UOW/Repos and int PK-s) Implement identity (with int primary keys) into your solution. Inlcude also identity management UI in separate area (copy it from base project, update routing) Replace default bootstrap template with some ready-made template. For admin area, you can use this (for example): https://github.com/almasaeed2010/AdminLTE Implement security in your own controllers - add authorize/allowanonymous attribute where needed. Check for resource usage rights inside your action methods. Implement security also on UI templates - show/hide menus etc Get rid of all the ViewData/ViewBag usage. Viewmodels should be implemented in all the controllers. ViewData is ok only then, when there is no other way of sending info to view (in _Layout for example). All dropdowns etc should be in viewmodels. Routing - add area routing. Add custom routes, if any of your controllers/actions uses query strings. Distance learnes - check the latest daytime videos for security practice/lecture. Deadline for part 4 Daytime 2017-05-07 23:59:59 Distance 2017-05-07 23:59:59