添加类:
public class JsonDataTimeConverter:IsoDateTimeConverter
{
public JsonDataTimeConverter()
{
DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
}
public override object ReadJson(JsonReader reader, Type objecType,object existingValue,JsonSerializer serializer)
{
DateTime dataTime;
if (DateTime.TryParse(reader.Value.ToString(), out dataTime))
{
return dataTime;
}
else
{
return existingValue;
}
}
}
在Global.asax 中Application_Start 方法中调用
GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.Converters.Insert(0,new JsonDataTimeConverter());
JsonDataTimeConverter类通过DateTime.TryParse判断时间参数,可以解决在api入参请求中时间参数不完整导致时间为null的问题