C# 如何使用c查询具有数组的MongoDb#

C# 如何使用c查询具有数组的MongoDb#,c#,mongodb,C#,Mongodb,我有这样的文件: { "_id" : ObjectId("56ff6d54f07a36271465441c"), "Author" : "John", "Content" : "Thera are alot of databases", "CreatedAtUtc" : ISODate("2016-04-02T06:57:24.542Z"), "Tags" : [ "elasticSearch", "MongoDb",

我有这样的文件:

{
    "_id" : ObjectId("56ff6d54f07a36271465441c"),
    "Author" : "John",
    "Content" : "Thera are alot of databases",
    "CreatedAtUtc" : ISODate("2016-04-02T06:57:24.542Z"),
    "Tags" : [ 
        "elasticSearch", 
        "MongoDb", 
        "C#"
    ],
    "Title" : "Best DB"
}
我喜欢查找所有带有标记“MongoDb”的文档

我试过:

var filter = Builders<Post>.Filter.In("Tags", "MongoDb");
var posts = collection.Find(filter).ToList();
var-filter=Builders.filter.In(“Tags”、“MongoDb”);
var posts=collection.Find(filter.ToList();
波斯特在哪里是C级


但我没有文件。有什么想法吗?

当查询
标记
数组上存在相等匹配“MongoDB”的文档时,只需使用查询文档
{“Tags”:“MongoDB”}:

Mongo Shell

db.collection.find({ "Tags": "MongoDb" })
C#

使用方法实现指定相等条件的筛选文档:

var filter = Builders<Post>.Filter.Eq("Tags", "MongoDb");
var posts = collection.Find(filter).ToList();
var-filter=Builders.filter.Eq(“Tags”、“MongoDb”);
var posts=collection.Find(filter.ToList();

这实际上解析为
{“Tags”:[“MongoDB”]}
,它不仅与列表中的任何元素都不匹配,而且与任何不“soley”包含“MongoDB”属性的“list”都不匹配。我不认为你真的知道答案,只是找到了一篇你认为会抄袭的帖子。谢谢克里丹,它真的太简单了!。