是否可以在使用RestSharp进行反序列化时实例化Null值

时间:2015-01-13 20:23:27

标签: c# restsharp

如何在使用RestSharp进行反序列化时默认实例化空值。

例如,你有这个POCO

public class Address {
    public string Street { get; set; }
    public string City { get; set; }
    public int Number { get; set; }
    public string Postal { get; set; }
}

public class Root {
    public string Name { get; set; }
    public Address Address { get; set; }
}

这个JSON:

{ 
    "Root": {
        "Name" : "John",
        "Address" : null 
    }
}

当我执行RestClient.ExecuteAsGet<Root>( ... )时,即使Address为空,它仍然可以实例化(new Address())吗?

1 个答案:

答案 0 :(得分:-1)

在较新版本的RestSharp中可能已更改,但默认情况下,如果对象不存在或为null,则对象应为null。

您可以使用Nullable通过值类型完成此操作。 https://msdn.microsoft.com/en-us/library/b3h38hb0.aspx

public class Root {
    public Nullable<DateTime> date { get; set; }
}