我将其发布到ASP.net Core操作中...
{
"Start":"2018-09-30T00:00:00+00:00",
"Finish":"2018-10-01T00:00:00+00:00"
}
它的模型绑定到两个Date?
属性,但是值是相同的日期,但是时间是1am。
为什么会这样?似乎只有在“ +00:00”出现时才这样做,所以我猜测这代表格林威治标准时间,服务器当前在夏季为+1。
答案 0 :(得分:0)
我基本上使用了这个答案... https://stackoverflow.com/a/38276403/221683
此自定义格式化程序在日期字符串中不包含时区。
public class DateTimeConverter : DateTimeConverterBase
{
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
throw new NotImplementedException();
}
public override void WriteJson(JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
{
writer.WriteValue(((DateTime) value).ToString("yyyy-MM-ddTHH:mm:ss"));
}
}
var serializedItem = JsonConvert.SerializeObject(item, new DateTimeConverter());