查询结果过滤有问题。
public class LinkTabProductCategory
{
[Key]
public int Id { get; set; }
public int ProductId { get; set; }
[JsonIgnore]
public Product Product { get; set; }
public int CatalogSubSectionId { get; set; }
public CatalogSubSection CatalogSubSection { get; set; }
}
var result = DataContext.Product
.Include(o => o.Offers)
.ThenInclude(p => p.Prices)
.ThenInclude(t => t.Type)
.Include(p => p.Brand)
.Include(tb=>tb.LinkTabProductCategories)
.Where( p=>p.LinkTabProductCategories **???** == id)
.ToList();
我需要获得产品列表,其中有:链接选项卡产品类别.目录子章节Id == id
***更新***这是查询结果列表:
{
"ProductId":"",
"UID1C": "",
"Name": "",
"Article": "",
"FactoryNumber": "",
"Brand": {
"BrandId": "",
"UID1C": "",
"Name": ""
},
"Offers": []
,
"LinkTabProductCategories": [
{
"Id": 1,
"ProductId": 2,
"CatalogSubSectionId": 1,
"CatalogSubSection": null
}
]
},
{},
{}.....
如何仅获取“CatalogSubSectionId”== 1的产品
2条答案
按热度按时间q3qa4bjr1#
在条件
.Where( p=>p.LinkTabProductCategories **???** == id)
是一个列表中,因此必须在列表中搜索CatalogSubSectionId
满足给定条件的任何项目。您可以使用
Any
和这个列表来给予所需的 predicate 。brtdzjyr2#
使用方法Any(predicate)-返回true,任何元素满足条件 predicate :
其中(p =〉p.链接选项卡产品类别.任意(c =〉c.目录子章节Id == id))