/ / Comment garder Entity Framework et la base de données alignés - linq, linq-to-sql, entity-framework

Comment garder Entity Framework et la base de données alignés - linq, linq-to-sql, entity-framework

aux premiers stades de développement, la base de données est soumise à des modifications continues. Je travaille avec LinqToSQL et, dans la plupart des cas, le modèle d’entité n’est qu’une représentation 1: 1 du DB.

Comment puis-je maintenir le modèle à jour avec les modifications de la base de données?

Merci.

Réponses:

1 pour la réponse № 1

Pourrait avoir à faire quelque chose comme ce qui est expliqué ici. Mais personnellement, je préfère le cadre des entités (les entités ADO.net sont prises en charge par défaut et peuvent être mises à jour avec un simple clic droit).

//modifier

Il semble qu'un simple glisser-déposer fonctionnera également.

Pour certaines personnes, cette question est discutable. C’est assez facile d’utiliser le mécanisme actuel de «resynchronisation» dans LINQ pour SQL en supprimant toutes les classes d'entités et fonctions (le terme LINQ to SQL pour les sprocs et UDF) sur le concepteur surface et puis rochage et laisser tomber les tables et les fonctions de intérêt, mettant ainsi à jour l'entité classes en régénérant à partir de zéro. Cependant, pour d'autres, cette solution est pas assez bon pour plusieurs raisons:

que vous pouvez lire ici.


1 pour la réponse № 2

J'ai remarqué qu'il y a un "modèle de mise à jour de"base de données" disponible si vous cliquez avec le bouton droit de la souris sur l'aire de conception Entity Framework. Je n'ai pas pu trouver une telle chose pour LINQ to SQL, vous devrez peut-être effectuer la maintenance à la main.

OTOH, c’est juste du XML, vous pouvez donc "écrire du code".


L’autre chose à ajouter est que je préfère le fait que dans EF, je ne "t devoir se tenir au courant de la base de données physique. Je définis les entités que les développeurs utiliseront pour accéder aux données et, séparément, je définis le mappage entre ces entités et la structure de base de données logique.

Ils ne doivent pas nécessairement être identiques. Si je veux diviser une table en deux ou combiner deux entités en une seule, je peux le faire sans demander aux développeurs de réécrire leur code.