查找特定字段值在列表 <ValueType> 中的 BsonDocuments?
Finding BsonDocuments where a specific fields value is within a List<ValueType>?
我的 MongoDB 数据库中有两个集合。 Collection1
有一个名为 Col2DocRef
的 Guid
类型字段(实际上是 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();
我的 MongoDB 数据库中有两个集合。 Collection1
有一个名为 Col2DocRef
的 Guid
类型字段(实际上是 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();