如何将整个 Bson 文档转换为 dotnet 中的字符串
Posted
技术标签:
【中文标题】如何将整个 Bson 文档转换为 dotnet 中的字符串【英文标题】:How to convert whole Bson document to a string in dotnet 【发布时间】:2021-12-28 13:53:03 【问题描述】:我正在使用带有 Mongo API (MongoClient) 的 cosmos DB。我需要检查包含超过 50 个属性的文档的任何字段中的值。
所以,我正在尝试将整个文档转换为字符串,然后使用下面的 contains 方法进行检查。
var d = _client.Find(f => f.ToString().Contains(str)).Limit(10).ToList();
'不支持的过滤器:document.ToString().Contains("MyStringHere").
如何将整个文档转换为字符串,然后在上面使用Contains
方法?
【问题讨论】:
***.com/questions/41356544/…这个问题看起来和你的问题很相似 当我点击链接Command find failed: $text not supported.
您的查询看起来如何?您是否创建了索引,正如链接上的那样?
尝试创建索引时也出现同样的错误@fbede
【参考方案1】:
使用MongoDB.Bson.BsonExtensionMethods.ToJson,可以将Bson Document转成JSON格式的字符串。
string json = MongoDB.Bson.BsonExtensionMethods.ToJson<BsonDocument>(document);
【讨论】:
但他不只是尝试检索 json 格式的文档,他还尝试在所有文档中进行搜索。 是的@fbede 的理解是正确的。 也许你正在寻找Builders以上是关于如何将整个 Bson 文档转换为 dotnet 中的字符串的主要内容,如果未能解决你的问题,请参考以下文章