4

请告诉我如何通过字段数组进行搜索?我有一些类型的字段List<Int64>。例如,第一个文档具有数字 [1,2,3,4] 的字段数组,第二个文档具有数字 [4,5,6,7] 的此类字段。

我想查找我的字段包含 3 和 4 个数字的文档,因此它是第一个文档。我正在寻找基于官方 MongoDB C# 驱动程序的示例;)

非常感谢你!!!

4

2 回答 2

8

你应该使用Query.All(). 像这样的代码:

var array = new List<int>() {3, 4};
var query = Query.All("SomeArray", new BsonArray(array));
collection.Find(query);

Query.All将所有具有嵌套数组的文档的结果SomeArrayvalues 3 and 4

如果你想3 or 4使用Query.In("SomeArray", new BsonArray(array))

对文档的引用: $all$in

于 2011-03-28T10:56:33.840 回答
1

在最新版本的 C# 驱动程序中,您可以使用:

Query<MyType>.All(_ => _.MyPropertyName, array));
于 2014-08-21T17:44:56.983 回答