使用带有LINQ的ID列表返回对象列表

时间:2013-12-20 19:41:45

标签: c# linq entity-framework

我有一个对象,它是两个对象A和B之间的组合:

class A
{
  public Id {get; set;}
  ...
  public B[] B_objs {get;set;}
}

class B
{
  public Id {get; set;}
  ...

}

当我知道对象A id

时,我想使用EntityFramework和LINQ来查找对象B的列表

dbContext

...
A A_object = UnitOfWork.A.FindById(id);

B[] B_Objects= A_object.B_objs ;     

IQueryable<B> query = from B b in dbContext.B
                            from A in dbContext.A
                            where( b => A.B_objs.Contains(pr.Id))
                            select b;

我收到错误消息“lambda表达式的参数数量与委托参数的数量不匹配。”我该如何更正此查询? 谢谢

1 个答案:

答案 0 :(得分:1)

IQueryable<Patient> query = 
    from b in dbContext.B
    from a in dbContext.A
    where a.B_objs.Contains(pr.Id)
    select b;