2010-11-03 3 views
0

Ma base de données stocke trois types d'utilisateurs: agent, programmeur et employé. Les trois types d'utilisateurs auront une adresse, un numéro de téléphone, un numéro de fax, etc ..., donc pour minimiser le nombre de tables, je veux créer une table tbContactDetails, et l'utiliser pour stocker les détails des contacts de ces 3 types de utilisateur.Entity Framework: Stockage de tous les détails de contact dans une table (association, FK composés)

Mon tbContactDetails, qui ressemble à ceci:

tbContactDetails 
int ContactId (PK, FK) 
int ContactType (FK) (1=Agent, 2=Programmer, 3=Employee) 
char (50) Addresses etc... 

Le ContactType champ détermine le type de possession utilisateur.

Le tableau Agent ressemblerait à ceci:

tbAgent 
int AgentId (PK) 
int ContactId (FK) 
int ContactType (FK) (which will always be 1 for an agent) 
char(50) Name etc... 

Ainsi, les trois tables, tbAgent, tbProgrammer et tbEmployee aurait tous un FK qui correspond à la tbContactDetails FK.

Je peux maintenant créer un diagramme dans l'Explorateur de serveurs, reliant le tbContactDetails FK au tbAgent (FK), au tbProgrammer (FK) et au tbEmployee (FK). Ma question est, et certains d'entre vous l'ont peut-être vu, comment puis-je faire en sorte que Framework4 reconnaisse cette relation FK2FK et en crée des associations?

Désolé cette question est trop longue,

Terry.

Répondre

0

Il semble que vous utiliserez Table Inheritance par type. Jetez un oeil à ce blog post, en particulier les étapes 5 et 6. Dans votre cas, tbContactDetails serait l'entité de base et tbAgent, tbProgrammer, et tbEmployee seraient des entités dérivées.

Questions connexes