关于 Entity framework的查询

tkdg0224 2013-04-17 02:35:39
现有两个类如下

public class A_Build
{
public int ID { get; set; }
public string Name { get; set; }
public DBDeleted Deleted { get; set; }
public virtual ICollection<A_House> A_House { get; set; }
}
public class A_House
{
public int ID { get; set; }
public string Name { get; set; }
public DBDeleted Deleted { get; set; }
public virtual A_Build A_Build{ get; set; }
}


我想在查询时过滤Deleted =1的数据
var query = context.A_BuildInfo.Include("A_House").
Where(b=> b.Deleted == DBModel.DBDeleted.UnDeleted);
这句只能过滤A_Build,怎样才能连A_House也一起过滤呢?
用的code first
...全文
7918 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
number1170196649 2013-05-04
  • 打赏
  • 举报
回复
var query = context.A_BuildInfo.Include("A_House"). Where(b=> b.Deleted == DBModel.DBDeleted.UnDeleted).Where(b=>b.A_House.Any(a=>a.Deleted==DBModel.DBDeleted.UnDeleted)) 试试这个。
devmiao 2013-05-04
  • 打赏
  • 举报
回复
var query = context.A_BuildInfo.Include("A_House"). Where(b=> b.Deleted == DBModel.DBDeleted.UnDeleted) .Select(b => new { Build = b, A_House = b.A_House.Where(x => !x.Deleted) });
  • 打赏
  • 举报
回复
描述的不太清楚,你是想查 house 还是 build ? 如果查 house 可以 where(h=>h.delete==false && h.build.delete==false).select(house)
q107770540 2013-04-19
  • 打赏
  • 举报
回复
你可以用join查询 where 过滤

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧