首页 > 解决方案 > 按数组字符串的元素查找记录

问题描述

我试图通过特定的数组元素(蓝色下划线)查找集合中的所有记录: 在此处输入图像描述

这是我的代码:

    FilterDefinition<string> queryTemplate = Builders<string>.Filter.Eq(pr => pr, templateId);
    return Database.GetCollection<AutoSave>(MongoDb.AutoSaveCollection)
        .Find(Builders<AutoSave>.Filter.ElemMatch(x => x.Templates, queryTemplate)).ToList();

但它不起作用。

标签: c#mongodb

解决方案


试试下面的过滤器:

    var filter = Builders<AutoSave>.Filter.Where(s => s.Templates.Contains(templateId));

    var result = collection.Find(filter).ToList();

这是一个测试程序


推荐阅读