在 C# 中处理 null Json 值。这里怎么处理?

Handle null Json Value in C#. How to handle it here?

提问人:Balasubramani M 提问时间:8/2/2014 更新时间:8/2/2014 访问量:1286

问:

我已经浏览了一些关于这个问题的帖子,但无法获得解决方案。如何在以下代码中处理此处的 null 值?

 foreach (KeyValuePair<string, object> obj in mainList[i])
 {
     PList[i].Add(obj.Value.ToString());
 }

我在尝试获取列表中的对象值时得到空值(空引用异常)。我试过这样的事情,

foreach (KeyValuePair<string, object> obj in mainList[i])
{
   try
   {
       var check = obj.Value.ToString();
       PList[i].Add(check);
   }
   catch(NullReferenceException)
   {
       var check = "Null";
       PList[i].Add(check);
   }
}

我可以使用第二个片段(使用 try catch 块)实现我的目标,但它似乎很慢。处理此 for 循环需要将近 30 秒。那么有没有其他方法可以处理这个空 Json 值呢?

mainList = List<Dictionary<String,String>>.
PList = List<String>.
C# JSON Windows-Phone-7 nullReferenceException

评论


答:

2赞 Chris Shao 8/2/2014 #1

在将 value 添加到列表之前,您可以检查 value 是否为 null。

foreach (KeyValuePair<string, object> obj in mainList[i])
{
    PList[i].Add(obj.Value == null ? "Null" : obj.Value.ToString());
}