Entity Framework 4.0: Ajout d'une propriété sur une table pour tenir une entité d'une autre table?
-
23-09-2019 - |
Question
Je voulais créer une nouvelle propriété sur une table dans mon modèle .. Fondamentalement, j'ai une table contrat appelé qui a beaucoup de domaines, mais je veux ajouter un autre champ client appelé qui tiendra mon autre table appelée client ..
J'ai essayé de jouer avec des types complexes, mais je ne sais pas si cela est-il .... Ensuite, je l'ai trouvé la propriété de navigation ... cela semblait intéressant ... comme un lien vers le client peut-être ?? .. mais je pourrais semblent indiquer nulle part ..
Au fond du tableau du contrat / modèle a besoin d'un nouveau client appelé propriété ... client est en fait une entité, mais le client doit se rendre cinque le contrat.
Comment est-ce fait ??
Je voulais le mettre en place dans le modèle que je puisse mettre à jour automatiquement le modèle etc .... et ne pas perdre les modifications personnalisées ..
Je pourrais bien sûr il suffit d'insérer quelque chose dans la classe partielle sur un autre fichier ....
Toutes les idées?
Merci
La solution
Qu'est-ce que vous essayez de faire est habituellement accompli en définissant correctement les relations primaires / clé étrangère entre les tables dans la base de données (ou entre les champs de votre modèle, si vous faites Model Driven Design).
Entity Framework sera automatiquement par magie voir la relation clé étrangère entre les tables et générer une propriété sur la classe mère pour occuper l'enfant.
Quant à votre commentaire (ce qui est mieux, la définition de la relation dans le modèle ou la création de classes partielles):
Il est bien mieux définir la relation dans votre modèle à mettre en œuvre dans les classes partielles. Ayant la relation définie dans votre modèle appliquer l'intégrité même si la base de données ne ... alors que si vous utilisiez des classes partielles, vous auriez à coder l'application vous.
Autres conseils
Si possible, je pense que vous aurez envie d'ajouter une clé étrangère à votre table de contrat qui détient la clé primaire de votre client. Ensuite, vous pouvez cliquer sur « modèle de mise à jour » qui ajoutera une propriété de navigation à votre modèle.