使用Mongodb C#驱动程序嵌套的String数组中的查询

时间:2018-09-19 10:02:01

标签: c# mongodb mongodb-query

我的数据结构如下

public class DataModel
{
  public int id { get; set;}
  public int num { get; set;}
  public List<string> tags { get; set;}
}

[
  {
    id: 1,
    num: 10,
    tags: ["Java", "Python"]
  },
  {
    id: 2,
    number: 20,
    tags: ["C++", "Javascript", "Java"]
  },
  {
    id: 3,
    number: 15,
    tags: ["Php", "C", "Java"]
]

我想提取所有其标签数组包含给定标签的项目,并且该项目不区分大小写。我尝试了以下方法

return await collections
                                 .Aggregate()
                                 .Match(dataModel=> dataModel.tags.Contains(tagName, StringComparer.CurrentCultureIgnoreCase))
                                 .SortByDescending(dataModel=> dataModel.num)
                                 .ToListAsync();

但是它将遇到错误不受支持的过滤器:{document} {tags}。包含(\“ java \”,值(System.CultureAwareComparer))。

您知道在这种情况下怎么了吗?

0 个答案:

没有答案