代码之家  ›  专栏  ›  技术社区  ›  Asik

newtonSoft.json.jsonConvert.DeserializeObject<t>能否返回空值?怎么用?

  •  1
  • Asik  · 技术社区  · 6 年前

    我正在调查 NullReferenceException 我不能在本地繁殖,我需要排除 Newtonsoft.Json.JsonConvert.DeserializeObject<T> 作为空值的潜在源。当我在本地使用一些无效输入进行尝试时,它总是抛出一个异常,从不返回空值。我的代码假定如果不引发异常,则返回非空对象。 这个 documentation 两种情况都没有。

    版本是 4.5.11 如果相关的话。

    1 回复  |  直到 6 年前
        1
  •  4
  •   EJoshuaS - Stand with Ukraine    6 年前

    是的,可以。下面是这样做的代码示例:

    namespace x {
        public class Something
        {
            public string abc { get; set; }
        }
    
        static void Main(string[] args)
        {
            Something newtonsoft = JsonConvert.DeserializeObject<Something>("");
        }
    }
    

    顺便说一句,在Newtonsoft 11.0.1、.NET 4.6.1和Visual Studio Professional 2015中进行了测试。