我有以下几行代码。
HttpResponseBase response = context.HttpContext.Response;
StringBuilder sBuilder = new StringBuilder();
JsonSerializer serializer = new JsonSerializer();
using (JsonWriter writer = new JsonTextWriter(new StringWriter(sBuilder)))
{
serializer.Serialize(writer, this.Data);
}
response.Write(sBuilder.ToString());
它负责每个C#在Web应用程序中的javascript输出。
那表示我无法完全更改它(很不幸,我尝试了很多错误)
问题是,它输入了错误的日期,在我的情况下是生日(dob)
ex: dob = { 1993 - 03 - 16 - 00 : 00 : 00 }
序列化(写入)后,dob变为{1993-03-15-23:00:00,GMT + 3}
我想序列化停止这样做。
我检查了newtonsoft的文档,但有0个帮助。
我尝试更改
serializer.DateParseHandling = DateParseHandling.None;
serializer.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat;
serializer.DateTimeZoneHandling = DateTimeZoneHandling.Local;
serializer.DateFormatString = "yyyy-MM-dd";
将它们设置为每种可能的模式。
结果还是一样。
我检查了其他这样的问题,这些问题建议反序列化,但是我不能这样做(或者可以吗?)
所以,如果您知道解决方法,我会很高兴的。
只是添加一些信息,在某些日期,我得到xx-xx-xx:aa:aa:aa gmt + 5之类的东西
我不明白那里有什么区别。
谢谢。