【发布时间】:2021-12-02 12:45:31
【问题描述】:
我在使用枚举类型列表过滤查询时遇到问题
public enum Offer{
None=1,
all,
stop
}
Class Emp{
[Column(TypeName = "jsonb")]
public list<Offer> offer { get; set; }
public D d { get; set }
public string FullName { get; set }
}
class D
{
public string age { get; set }
public string countryCode { get; set }
}
public async Task<List<Emp>> ListEmp( List<Offer> offer ){
var query= catalogDb.Emp.Include(a=>a.D)
.Where(a=>a.Name="xyz")
.AsQueryable();
if(offer.count>0){
// need a query for filter offer column using multiple List<Offer> parameters
**query=query.Where(i=>i.Offers.Contains(offer))**
// can filter only one value USING CONTAINS
}
return await query.ToListAsync();
}
在使用 query.ListAsync()之前,我需要一个查询来过滤带有多个参数的offer列
public list<Offer> offer 也可以接受空值
数据库表名与类名相同
我们存储多个值。这就是为什么我们使用 List 类型的 Offer 字段响应保存该列,如
[1,2] 或 [], [1,2,3], [2]
【问题讨论】:
标签: sql postgresql asp.net-web-api entity-framework-core linq-to-entities