簡體   English   中英

在C#中的bson文檔中驗證bsonnull的最佳方法

[英]Best way to validate for bsonnull in a bson document in C#

我的樣本文檔如下所示。

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

如果我需要獲取add2 =>的值

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

因此,如果存在價值,它就是完美。 如果address在mongodb中為bsonNull,那么它給出了強制轉換錯誤。

所以我使用條件

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

這可以。 但是,如果嵌套文檔的大小最高為3-4級,那么這些外觀就不好了。

還有沒有其他方法可以像add2字段為null一樣驗證整個行,也可以不像我在IF條件中所做的那樣單獨驗證行

通常,您應該將文檔轉換為ac#對象。 您仍然需要檢查內部對象是否為null,但看起來更干凈。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM