C#:从bson文档中检索数组值

时间:2014-11-20 18:44:20

标签: c# mongodb mongodb-.net-driver

在我的MongoDB集合中,我有一个带有数组条目的文档。如何在C#中将这些数组值作为字符串数组获取?我可以让文档本身恢复正常,但我似乎无法获得数组值。这就是我要做的事情:

QueryDocument findUser = new QueryDocument("_id" , id);
BsonDocument user = bsonCollection.FindOne(findUser);

所以在这个user文档中,有一个我想要获取并解析为字符串数组的数组。该文件看起来像这样:

{
  "firstname" : "jon",
  "secondname" : "smith",
  "loves" : ["this","that","other stuff"]
}

1 个答案:

答案 0 :(得分:11)

如果我的问题正确,一种方法是:

var queryString = Query.EQ("_id", id);
var resultBsons = collection.FindOne(queryString);
var arrayOfStrings = resultBsons["loves"].AsBsonArray.Select(p => p.AsString).ToArray();