EF Core 3.0 Npgsql是否有Postgres数组重叠(&&)运算符

时间:2019-11-20 17:15:27

标签: postgresql entity-framework-core npgsql

给出带有列DBSet<Tasks>的{​​{1}}。 EF Core Npgsql中是否可以使用Postgres重叠(&&)运算符例如提供的标签列表来查询与提供的标签列表共有的标签

tags text[]

我找不到与此相关的任何内容,并且我想避免进行客户端评估。我想做类似的事情

select * from tasks where tag && '{bug, feature}'

我也尝试了linq contains方法

var tags = new List<string> { "bug", "feature" };
var foo = _db.Tasks.Where(x => x.Tags && tags); // obviously this doesn't work

但是收到了linq表达式无法翻译的例外。

1 个答案:

答案 0 :(得分:1)

版本3.1已添加对数组重叠(&&)和包含(@>)的支持,该版本应很快发布(请参阅https://github.com/npgsql/efcore.pg/issues/1135)。

如果需要其他任何运算符且未翻译,请重新发行。