Existe-t-il un meilleur moyen d'actualiser les modèles d'entité (fichiers * .edmx)?

entity-framework entity-model project-management visual-studio

Question

J'ai besoin d'actualiser un tas de fichiers EDMX dans ma solution. Nous avons divisé nos tables en groupes et chaque modèle représente un composant ou un processus. Cependant, certaines tables se chevauchent, ce qui signifie parfois que je dois actualiser / mettre à jour plusieurs modèles d'entité.

L'actualisation d'un groupe de différents modèles d'entité dans VS 2008 est lente et dangereuse. Si je manque un modèle obsolète, mon application ne fonctionnera pas

Je dois vérifier que tous les modèles de ma solution sont à jour avec ma base de données de développement.

Solution ultime: comment puis-je créer un script? Existe-t-il une API pour Visual Studio permettant d'actualiser un fichier EDMX? Je fais exactement la même chose à chaque fois. Je ne peux pas programmer ça?

Ok Solution: Puis-je configurer quelque chose dans Visual Studio pour m'informer lorsqu'un modèle d'entité ne correspond pas à une base de données? Quelle est la méthode recommandée pour tester le modèle par rapport à une base de données?

Merci d'avance.

Réponse acceptée

Autant que je sache, EdmGen ne fonctionnera que pour les applications WPF. Puisque vous souhaitez mettre à jour un fichier .EDMX, vous n’avez pas accès aux fichiers xml que l’EdmGen essaie de valider.

Je suggérerais de consulter le blog ADO.NET: http://blogs.msdn.com/adonet/archive/2008/06/26/edm-tools-options-part-3-of-4.aspx

Ils expliquent comment mettre à jour un fichier EDMX, mais c'est assez compliqué. Espérons que VS10 aura une meilleure solution pour cela.


Réponse populaire

Consultez le générateur EDM http://msdn.microsoft.com/en-us/library/bb387165.aspx

Vous pouvez créer un événement de pré-génération pour régénérer le modèle. Il est également sage de pré-générer les vues, ce qui augmente considérablement les performances.

J'espère que cela t'aides.



Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow