查找特定字段值在列表 <ValueType> 中的 BsonDocuments?

Finding BsonDocuments where a specific fields value is within a List<ValueType>?

我的 MongoDB 数据库中有两个集合。 Collection1 有一个名为 Col2DocRefGuid 类型字段(实际上是 string),它引用了 Collection2 中的 _id 文档。

我目前有一个 List<Guid> 表示 Collection2 中的 _id 个文档。我想在 Collection1 中找到所有文档,其中字段 Col2DocRef 等于 List<Guid>.

中的任何值

这是使用 AnyIn 执行此操作的正确方法吗?

List<Guid> guids = ... // Creating by searching in Collection2 and deserializing
Builders<BsonDocument>.Filter.AnyIn("Col2DocRef", guids);

您可以直接使用 FindAsync() 传递过滤器,如下所示,假设这些集合在您的应用程序界面中具有相应的强类型 POCO。

List<Guid> guids = ... // Creating by searching in Collection2 and deserializing
var collection = db.GetCollection<Collection1>("Collection1");
var result = collection.FindAsync(col => guids.Contains(col.Id)).ToListAsync();