在Rest API中,当reutrn-datetime-null创建json格式的错误

本文关键字:json 创建 格式 错误 reutrn-datetime-null Rest API | 更新日期: 2023-09-27 18:25:13

我在Rest服务器中创建了一个get方法,它将以json格式返回数据。在json对象中包含一个日期时间字段,如果我将这个日期时间字段传递为null,那么它将通过一个异常。

这是我的代码,似乎不工作

public class meta 
{ 
  private System.DateTime createdField; 
    [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaFo‌​rm.Unqualified)] 
     public System.DateTime created { 
       get { return this.createdField; } 
       set { this.createdField = value; } 
     } 
  } 

在Rest API中,当reutrn-datetime-null创建json格式的错误

使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; }        
    }