2

我的示例文档如下所示。

 sampledoc = { "name" : "shan",
                   "address" : {
                                "add1" : "",
                                "add2": null
                                }
                  }

如果我需要获取 add2 = >

var valueR = sampledoc["address"].asbsondocument["add2"].asstring;

因此,如果存在价值,那么它就是完美的。如果 mongodb 中的 address 是 bsonNull ,那么它会给出强制转换错误。

所以我使用像这样的条件

if(!sampledoc["address"].IsBsonNUll && !sampledoc["address"].asbsondocument["add2"].IsBsonNUll )
{
//do that stuff
}

这可以。但如果嵌套文档达到 3-4 级,那么这些看起来很糟糕。

有没有其他方法可以像add2 字段一样进行整体验证,或者在没有像我在 IF 条件中那样单独验证的情况下是否在一条直线上

4

1 回答 1

0

您通常应该将文档转换为 ac# 对象。您仍然需要检查内部对象是否为 null,但它看起来会更干净。

于 2014-06-07T06:10:49.103 回答