C# Mongo db使用.net在列表中查找字符串

C# Mongo db使用.net在列表中查找字符串,c#,.net,mongodb,C#,.net,Mongodb,我在Posts集合中有几个记录,其中Tags字段为 "Tags" : [ "Xyr,zau,iRS" ] 我想找到所有包含我发送给函数的标签的帖子。正确的方法是什么 我尝试过但无法检索到任何数据的一些事情是 标记为字符串参数 var builder = Builders<Post>.Filter; var filter = builder.Eq("Tags", tag); var filter = new BsonDocument("Tags", new BsonDocument

我在Posts集合中有几个记录,其中Tags字段为

"Tags" : [ "Xyr,zau,iRS" ]
我想找到所有包含我发送给函数的标签的帖子。正确的方法是什么

我尝试过但无法检索到任何数据的一些事情是

标记为字符串参数

var builder = Builders<Post>.Filter;
var filter = builder.Eq("Tags", tag);

var filter = new BsonDocument("Tags", new BsonDocument("$eq", tag));

var filter = new BsonDocument("Tags", new BsonDocument("$in", tag)); // That one somehow generated an error

var filter= new BsonDocument("Tags", tag);
var builder=Builders.Filter;
var filter=builder.Eq(“标签”,标签);
var filter=newbsondocument(“Tags”,newbsondocument($eq,tag));
var filter=newbsondocument(“Tags”,newbsondocument(“$in”,tag));//那一个不知怎的产生了一个错误
var过滤器=新的BsonDocument(“标签”,标签);

假设您的
标签
字段如下:

"Tags" : [ "Xyr", "zau", "iRS" ]
然后您可以在MongoDB driver 2.0中使用“$in”查询,如下所示:

var filter=Builders.filter.In(“Tags”,新字符串[]{tag});

看来你是对的,这应该是你表现出来的方式,但现在不是。最好以某种方式修复它,然后尝试find()。感谢您指出我在标记上的错误。首先将Tags属性插入mongodb,解决了我所有的查找问题。@Fassens很高兴听到这个消息。
var filter = Builders<Post>.Filter.In("Tags", new string[] { tag });