在Entity Framework Core 3.1中,基于多个搜索条件的LINQ Contains条件。

我有一个字符串参数,它被分割成多个搜索过滤器,这取决于一个字符串的结果。Split(',') 操作。我想选择所有标题字段为 包含 任何一个搜索过滤器

我希望下面的LINQ能起作用

    string[] filters = param.Split(',');

    var query = await
        (from t in this.Context.Persons
         from f in filters.Where(f => t.Title.Contains(f))
         select t).ToListAsync();

然而执行查询时,我得到以下错误。

Processing of the LINQ expression 't => __filters_0
    .Where(f => t.Title.Contains(f))' by 'NavigationExpandingExpressionVisitor' failed. This may indicate either a bug or a limitation in EF Core. 

希望得到任何帮助。

解决方案:

我最终在IQueryable上实现了一个通用的LikeAny扩展方法,就像这里描述的那样。https:/github.comdotnetefcoreissues10834

给TA打赏
共{{data.count}}人
人已打赏
未分类

有没有办法在查询中修改.where()查询的数据库端?

2022-9-23 11:11:36

未分类

在 react 中从本地 json 文件中检索数据。

2022-9-23 11:11:43

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索