Entity Framework 4 / POCO – Par où commencer?

J’ai programmé pendant un certain temps et j’ai utilisé LINQ-To-SQL et LINQ-To-Entities auparavant (même si lors de l’utilisation d’entités, il s’agissait d’une relation Entity / Table 1-1, c’est-à-dire pas très différente de L2SQL)

Je me suis beaucoup renseigné sur l’inversion du contrôle, l’unité de travail, POCO et les modèles de référentiel et j’aimerais utiliser cette méthodologie dans mes nouvelles applications.

Là où j’ai du mal à trouver un guide de débutant clair et concis pour EF4 qui ne suppose pas la connaissance de EF1.

Les questions spécifiques auxquelles je dois répondre sont les suivantes:

Code premier / premier modèle? Avantages / inconvénients en ce qui concerne EF4 (c.-à-d. Que se passe-t-il si je code en premier, modifie le code ultérieurement et doit régénérer mon modèle de firebase database? Les données sont-elles conservées et transformées ou supprimées?)

En supposant que je commence par le code (j’aimerais voir comment EF4 le convertit en un schéma de firebase database), comment commencer? Assez souvent, j’ai vu des articles avec des diagrammes d’entités indiquant “C’est donc mon modèle d’entité, maintenant je vais …” – Malheureusement, je ne sais pas s’ils ont créé le modèle dans le concepteur. générer du code puis arrêter toute autre génération de code automatique – ou – Ils ont codé (POCO)? les classes et le en quelque sorte les ont importés dans la vue de deisgner?

Je suppose que ce dont j’ai vraiment besoin, c’est de comprendre d’où vient la “magie” et comment l’append moi-même si je ne génère pas seulement un modèle EF directement à partir d’une firebase database.

Je suis conscient que la question est un peu vague mais je ne sais pas ce que je ne sais pas – Donc, toute consortingbution / correction / clarification a été appréciée.

Inutile de dire que je ne m’attends pas à ce que quelqu’un m’assoie ici et m’apprend EF – je voudrais juste quelques bons tutoriels / forums / blogs / etc. pour les débutants de l’entité complète

Ces articles pourraient être intéressants … la série aborde vraiment les avantages et les inconvénients d’une approche 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

Dans ces articles, l’auteur mentionne des articles futurs décrivant les meilleures pratiques dans la mise en œuvre des modèles de référentiel et d’unité de travail, mais je ne les trouve pas. Ces articles sont bien écrits et j’aimerais lire plus de cet auteur.

Je suis tombé sur ceci: http://blogs.msdn.com/adonet/pages/feature-ctp-walkthrough-code-only-for-the-entity-framework.aspx

Ce qui vous donne étape par étape pour le code en premier. Il nécessite le CTP 3 pour EF4 (Download linked from this article).

C’est assez proche de ce que j’étais après (même si, idéalement, une solution qui ne repose pas sur un CTP aurait été préférable)

Je vous recommande de prendre environ une demi-heure et de générer un modèle stable EF1.0 dans votre VS actuel. Cela vous aidera à comprendre les métaphores et les concepts de EF 4.0. Il suffit de créer une simple firebase database clients, produits et commandes … Je vous recommande de faire votre propre travail et de ne pas utiliser Northwind.

C’est une excellente question, mais difficile à tenir à jour au fur et à mesure de la maturation d’Entity Framework. La page EF de Microsoft est probablement le meilleur endroit pour commencer.

Quelques autres liens que j’ai trouvés utiles lors de ma recherche sur Google (axé sur le code d’abord):

  • Premiers pas avec EF à l’aide du tutoriel MVC
  • Développement du code avec Entity Framework Vidéo de TechEd 2010
  • Le post de Scott Gu sur Code-First Development avec EF4
  • MSDN Entity Framework 4.1 et 4.2

Vous pouvez prendre le livre de Lerman ou quelque chose de plus simple comme “Pro linq mapping object-relationnel”. Tous les concepts sont toujours les mêmes avec POCO, sauf que vous devez maintenant désactiver la génération de code et mapper directement sur votre modèle dans edmx csdl (ou créer votre propre générateur POCO). Tous les principes de cartographie sont également les mêmes. De toute façon, au moment de l’exécution, vous travaillez avec un proxy dérivé de votre object POCO. Vous devez donc vous préoccuper de la prise en charge de l’interception (virtualisation de vos propriétés POCO).

Voici un guide détaillé sur le modèle POCO pour Entity Framework qui semblait très bien. Vous pouvez également consulter le blog de l’équipe ADO.NET . Si vous voulez commencer au début (EF v1.0) comme base pour vos connaissances EF, j’ai trouvé le livre de Julia Lerman intitulé Programming Entity Framework très complet.

Ne pas avoir le rep pour commenter une réponse, mais voici une réponse à la réponse de Jinkinz:

Utilisation des modèles de référentiel et d’unité de travail avec 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

Julia Lerman a une belle série de vidéos d’introduction d’ environ 10 minutes chacune. Ils sont introductifs, mais il existe de nombreux conseils pratiques qui vous permettront de surmonter certains obstacles potentiels. J’ai particulièrement apprécié sa démonstration de regarder le réel SQL en utilisant SQL Server Profiler.

Si vous utilisez des scénarios déconnectés, je vous recommande de lire le livre de Julie Lerman: “Programming DbContext”, dans le chapitre 4 spécial.

J’ai trouvé beaucoup d’exemples dans les blogs, etc., mais presque tous concernent des cénarios connectés.

Je commence aussi. et ce livre m’a beaucoup aidé. Au fait, je lui ai acheté trois livres.

Je cherchais les mêmes réponses et je suis tombé sur http://www.dotnetcurry.com/ShowArticle.aspx?ID=599

À la fin du lien, il y a peu de liens qui vous permettront de passer à Entity Framework 4.

J’espère que cela t’aides

Wow, beaucoup de réponses. Qu’en est-il d’un exemple qui contient une version modifiée de modèles T4 qui génèrent des interfaces POCO + et des référentiels?

https://entityinterfacegenerator.codeplex.com