2009-06-30 4 views
0

Supposons que j'ai une table employee et department, l'employé possède une clé étrangère departmentID qui est la table primaire du département. J'utilise le code suivant pour obtenir une instance unique d'une entité basée sur Linq to SQL: db.Employee.SingleOrDefault (e => e.empid == id); mais je veux obtenir l'instance de département en même temps. Comment écrire linq pour cette exigence?comment écrire LINQ pour obtenir un seul objet avec une instance d'objet assoicate?

Répondre

3

Si la relation de clé étrangère est définie dans la base de données, elle doit être automatiquement ajoutée à l'objet Linq. Par conséquent, l'objet Employee retourné aura une propriété Department entièrement remplie.

Mise à jour: Je ne reçois pas de réparer quelque chose que Jon Skeet a souvent écrit, alors voici moi CHANCE:

var query = from employee in db.Employee 
      where employee.empid == id 
       select new { 
        Employee = employee, 
        Department = employee.department 
       }; 

Linq2Sql automatiquement faire le rejoindre!

+0

C'est très cool. J'aime ça. Pourrait aussi bien supprimer ma réponse maintenant :) –

Questions connexes