PV178/02 Domácí úkol 7
Databáze
Zadání
Váš domácí úkol je:
- zapracovat podporu databáze do vašeho projektu,
- provedené změny reflektovat do diagramu tříd,
- vytvořit netriviální demo, které ukáže funkčnost čtení a ukládání dat z databáze,
- implementovat CRUD (Create-Read-Update-Delete) operace vašich manažerů nebo podobných tříd,
- připomínám, že nechat zveřejnit v manažerovi jako vlastnost entitní množinu a pak nad ní ve vyšší vrstvě (e.g. z webové stránky) volat LINQ dotazy je nebezpečné, obvykle porušuje pravidla zapouzdření a nebude se mi to vůbec líbit,
- třídy a entity nechť jsou už úplné a obsahují vše co bude potřeba pro řešení,
- což znamená, že musíte vědět co vytváříte, mít znalost řešeného problému (formáty, algoritmy, ...)
- názvy všech tříd nechť jsou v angličtině,
- dodržujte konvence pro vytváření knihoven v .NET Framework (hlavně konvence pro pojmenování) - viz odkazy,
- už můžete psát i ošetření vstupu výjimkami (nicméně to ještě nevyžaduju).
Předpokládám, že pro přístup k databázi použijete Entity Framework 4 (4.1) a Model First resp. Code First přístup. Pokud budete chtít použít jinou technologii, napište mi nejprve email.
Jako databázi doporučuji použít SQL Server Compact 4 (SQLCE 4). Důvody jsou jednak přenostitelnost databáze (takže ji můžete odevzdat s projektem a nehrozí tedy nebezpečí, že mi to nebude fungovat) a na rozdíl od verze SQL CE 3.5 už byla verze 4 navržena s ohledem na použití společně s EF a pro použití na webu (konkrétně funguje generování ID v databázi ve spojení s EF nebo stránkování a tedy i LINQ metody Take
a Skip
).
Odkazy