在带有C#2.0驱动程序的MongoDB 3.0中,如何使用文档的子文档数组中的DistinctAsync
获取不同的值列表?
我在shell中寻找C#的等价物:
db.cars.distinct("parts.name", {"make":"Ford"})
在承认失败之后,我使用了这个shell-ish代码:
var distinctParts = await db.RunCommandAsync<BsonDocument>(new BsonDocument {
{ "distinct", "cars"},
{"key", "parts.name"},
{"query", new BsonDocument { { "make", "Ford" }} } });
谢谢!
答案 0 :(得分:1)
这样的事情应该有效:
var filter = new MongoDB.Driver.ExpressionFilterDefinition<CARS_TYPE>(x => x.make == "ford");
var distinctParts = await cars_collection.DistinctAsync<string>("parts.name", filter);