Programuję od jakiegoś czasu i wcześniej korzystałem z LINQ-To-SQL i LINQ-To-Entities (chociaż przy użyciu encji było to w relacji Entity / Table 1-1 - tj. Niewiele różni się od L2SQL)
Dużo czytałem o Inwersji Kontroli, Jednostce Pracy, POCO i wzorcach repozytoriów i chciałbym zastosować tę metodologię w moich nowych aplikacjach.
Walczę o znalezienie jasnego, zwięzłego przewodnika dla początkujących dla EF4, który nie zakłada znajomości EF1.
Konkretne pytania, na które muszę odpowiedzieć, to:
Pierwszy kod / pierwszy model? Plusy / minusy w odniesieniu do EF4 (tj. Co się stanie, jeśli najpierw zrobię kod, zmienię kod w późniejszym terminie i będę musiał ponownie wygenerować mój model DB - Czy dane są zachowywane i przekształcane lub usuwane?)
Zakładając, że idę najpierw po kod (chciałbym zobaczyć, jak EF4 konwertuje to do schematu DB) jak właściwie zacząć? Dość często widziałem artykuły ze schematami encji stwierdzającymi: „To jest mój model encji, teraz zamierzam ...” - Niestety nie jestem pewien, czy stworzyli model w projektancie, czy zapisali go w wygenerować kod, a następnie przerwać dalsze automatyczne generowanie kodu -lub- Oni mają zakodowane (POCO)? klasy i jakoś zaimportowały je do widoku deisgner?
Przypuszczam, że tak naprawdę potrzebuję zrozumienia, skąd pochodzi „magia” i jak ją dodać, jeśli nie generuję modelu EF bezpośrednio z bazy danych.
Wiem, że pytanie jest trochę niejasne, ale nie wiem, czego nie wiem - więc doceniam wszelkie uwagi / poprawki / wyjaśnienia.
Nie trzeba dodawać, że nie oczekuję, aby ktokolwiek tu siedział i uczył EF - chciałbym tylko kilka dobrych samouczków / forów / blogów / itp. dla kompletnych początkujących encji
źródło
Odpowiedzi:
Artykuły te mogą być interesujące ... seria naprawdę ma zalety i wady podejścia POCO.
http://blogs.msdn.com/b/adonet/archive/2009/05/21/poco-in-the-entity-framework-part-1-the-experience.aspx
http://blogs.msdn.com/b/adonet/archive/2009/05/28/poco-in-the-entity-framework-part-2-complex-types-deferred-loading-and-explicit-loading. aspx
http://blogs.msdn.com/b/adonet/archive/2009/06/10/poco-in-the-entity-framework-part-3-change-tracking-with-poco.aspx
W tych artykułach autor wymienia przyszłe artykuły opisujące najlepsze praktyki we wdrażaniu wzorców repozytorium i jednostki pracy, ale nie mogę ich znaleźć. Artykuły te są dobrze napisane i chciałbym przeczytać więcej od tego autora.
źródło
Natknąłem się na to: http://blogs.msdn.com/adonet/pages/feature-ctp-walkthrough-code-only-for-the-entity-framework.aspx
Co daje krok po kroku kod. Wymaga CTP 3 dla EF4 (pobierz link z tego artykułu).
Jest to dość zbliżone do tego, czego szukałem (chociaż najlepiej byłoby rozwiązanie, które nie opiera się na CTP)
źródło
Radzę zająć około pół godziny i wygenerować stabilny model EF1.0 w bieżącym VS. To da ci długą drogę do zrozumienia metafor i koncepcji EF 4.0. Po prostu przygotuj prostą bazę Klientów, Produktów i Zamówień ... Polecam robić własne i nie używać Northwind.
źródło
To świetne pytanie, ale trudne do aktualizacji, ponieważ Entity Framework nadal dojrzewa. Prawdopodobnie najlepszym miejscem na rozpoczęcie, które będzie aktualne w przyszłości, jest strona EF firmy Microsoft .
Kilka innych linków, które okazały się pomocne podczas googlingu (koncentruje się na Code First):
źródło
Możesz wziąć książkę Lermana lub coś prostszego, jak „Pro linq mapowanie obiektowo-relacyjne”. Wszystkie koncepcje są nadal takie same w POCO, z tym wyjątkiem, że teraz powinieneś wyłączyć generowanie kodu i mapować bezpośrednio na swój model w edmx csdl (lub utworzyć własny generator POCO). Wszystkie zasady mapowania są również takie same. W każdym razie w czasie wykonywania pracujesz z serwerem proxy, który pochodzi z obiektu POCO, więc powinieneś się martwić o obsługę przechwytywania (wirtualizacja właściwości POCO).
źródło
Istnieją również te samouczki:
źródło
Oto przewodnik po szablonie POCO dla Entity Framework, który wyglądał całkiem nieźle. Możesz również zajrzeć na blog zespołu ADO.NET . Jeśli chcesz zacząć od początku (EF v1.0) jako podstawa twojej wiedzy o EF, znalazłem książkę Julii Lerman Programming Entity Framework bardzo kompletną.
źródło
Nie mam przedstawiciela, który mógłby skomentować odpowiedź, ale oto odpowiedź na odpowiedź Jinkinza:
Używanie wzorców repozytorium i jednostki pracy z Entity Framework 4.0:
http://blogs.msdn.com/b/adonet/archive/2009/06/16/using-repository-and-unit-of-work-patterns-with-entity-framework-4-0.aspx
źródło
Julia Lerman ma niezłą serię filmów wprowadzających , około 10 minut każdy. Są wprowadzające, ale istnieje wiele praktycznych wskazówek, które usuwają potencjalne przeszkody w nauce. Szczególnie podobał mi się jej pokaz oglądania rzeczywistego SQL przy użyciu SQL Server Profiler.
źródło
Jeśli zamierzasz korzystać z rozłączonych cenarios, polecam przeczytać książkę Julie Lerman: „Programowanie DbContext” w specjalnym rozdziale 4.
Znalazłem wiele przykładów na blogach itp., Ale prawie wszystkie dotyczą połączonych cenarios.
Ja też zaczynam. i ta książka bardzo mi pomogła. Nawiasem mówiąc, kupiłem jej trzy książki.
źródło
Szukałem tych samych odpowiedzi i natknąłem się na http://www.dotnetcurry.com/ShowArticle.aspx?ID=599
Na końcu linku znajduje się kilka linków, które sprawią, że zaczniesz korzystać z Entity Framework 4.
Mam nadzieję że to pomoże
źródło
Wow, wiele odpowiedzi. Co powiesz na przykład, który zawiera ulepszoną wersję szablonów T4, które generują POCO + interfejsy + repozytoria?
https://entityinterfacegenerator.codeplex.com
źródło