我在Rest服务器中创建了一个get方法,它将以json格式返回数据。 在json对象中包含一个日期时间字段,如果我将此datetime字段传递为null,则它将通过异常。
这是我的代码似乎无法运作
public class meta
{
private System.DateTime createdField;
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public System.DateTime created {
get { return this.createdField; }
set { this.createdField = value; }
}
}
答案 0 :(得分:2)
制作DateTime
Nullable
,它应该有效。
您也可以尝试将[JsonIgnore]
放在该属性上。
示例
class Program
{
static void Main(string[] args)
{
var mo = new MyObject { integerValue = null, dateTimeValue = null };
var ser = Newtonsoft.Json.JsonConvert.SerializeObject(mo);
var deser = Newtonsoft.Json.JsonConvert.DeserializeObject(ser, typeof(MyObject));
}
}
public class MyObject
{
public int? integerValue { get; set; }
public DateTime? dateTimeValue { get; set; }
}