2011-02-17 86 views
4

我想选择加载照片和电话实体的员工。 我使用这样的查询:实体框架4包含+表加入不一起工作

var empl = from user in ObjectContext.Users 
          from employee in ObjectContext.Employees.Include("Photo").Include("HomeTelephone") 
          where 
           user.Id == userId && 
           employee.Id == user.EmployeeId && 
           employee.Deleted == false && 
           employee.OwnerOrganizationId == Singleton.OrganizationId 
          select employee; 

var result = empl.FirstOrDefault(); 

结果有照片和HomeTelephone性空,但PHOTOID和HomeTelephone集...

我做错了吗?

回答

2

也许这可以解决您的问题。

User user; 

using (var ctx = new Model1Container()) 
{ 

    user = ctx.UserSet 
       .Include("Employee") 
       .Include("Employee.Photo") 
       .Include("Employee.Telefon") 
       .Single(x => x.Id == id); 
} 
Console.Out.WriteLine(user.UserName); 
Console.Out.WriteLine(user.Employee.Telefon.First().Number); 
Console.ReadLine(); 
+0

谢谢。我有这个想法。 – v00d00 2011-02-18 07:36:41