gpt4 book ai didi

c# - Entity Framework 6 过滤子对象

转载 作者:太空宇宙 更新时间:2023-11-03 13:12:26 27 4
gpt4 key购买 nike

我正在尝试使用 EF6 从数据库中获取数据。我有两个类(class)

public class Manufacturer
{
public int Id {get;set;}
public string Name {get;set;}
public bool Enabled {get;set;}
public virtual IList<Product> Products {get;set;}
}

public class Product
{
public int Id {get;set;}
public string Name {get;set;}
public bool Enabled {get;set;}
public virtual Manufacturer Manufacturer {get;set;}
}

我只需要获得 Enabled Manufacturer with Enabled Products我尝试了以下方法:

var results = _context.Manufacturer
.Where(m => m.Enabled)
.Where(m => m.Products.Any(p => p.Enabled))
.Select(m => new
{
Manufacturer = m;
Product = m.Products.Where(p => p.Enabled)
});

不幸的是,子对象没有被填充。“产品”列表总是充满未“启用”的产品有什么想法吗?

最佳答案

你可以反过来。也尝试包括相关对象。

var r = context.Products.Include("Manufacturer")
.Where(p=>p.Enabled && p.Manufacturer.Enabled);

关于c# - Entity Framework 6 过滤子对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27912597/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com