Jak používat EF ve skutečné aplikaci typu informačního systému, aby se snadno psala, fungovala a byla udržovatelná? Ukážeme si, jak řešit validace a chyby, konfiguraci session, generické CRUD operace nebo mapování do aplikačních vrstev. Vše zasadíme do designu reálné vzorové ASP.NET MVC aplikace, včetně využití dependency injection a rozdělení aplikace do více vrstev. Využijeme mimo jiné Castle Windsor, Automapper nebo Postsharp.
-menší vazba, než DbContext v MVC Controlleru; u velkých APP by byl stejně problém měnit ORM vrstvu
-spíš bychom měli mluvit o CQRS
-účel vrstev
-alternativně lze definovat samostatná DTO pro Create, Edit i Delete
-Person.EmailAddresses
-PersonViewModel.DisplayName
MappingTests.cs
DI – pozor co jde do DB
visibility
visibility
CrudFacade – null v konstruktoru pro danou operaci jí zakáže
-riziko starých dat z jiných operací v Contextu
-riziko paralel. updatu jiným requestem (transakcí) – ale to znamená chybný design (transakce vs. timestamps)