无法将BsonArray转换为BsonInt32

时间:2014-09-30 09:35:43

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

下面是代码,它首先获取bson元素,然后获取其相应的值,但即使是这里的bson值也会返回为完整的' key:value'从第二次迭代开始,它会给出一个转换错误,说明无法将bson数组转换为bson int32。

我想只获取每个元素的值,然后总结这些值并将它们显示在一个新的bson元素中,因为出现了转换错误而被卡住了。有人可以帮我解决这个问题吗?

foreach (string nestedAmount in document.Names)
                {
                    BsonElement element = document.GetElement(nestedAmount);
                    BsonValue elementValue = element.Value;



                    //summation logic

                }

1 个答案:

答案 0 :(得分:0)

我只是自己想出了解决方案,下面是现在正常运行的代码

    double Total = 0;    

    foreach (BsonDocument nestedDocument in myDocument["doc"].AsBsonArray)
                        {
                            Total += Convert.ToDouble(nestedDocument["amt"]);
                        }