【发布时间】:2012-02-13 16:38:08
【问题描述】:
我正在尝试使用 JSON.net 将 JSON 加载到 SQL 数据库中。
我对其他 JSON 响应没有任何问题,但是以下格式似乎无法正确反序列化。
{"Report":["2012m01d01","2012m01d02","2012w01","2012m01","2012m01d03","2012m01d04","2012m01d05","2012m01d06","2012m01d07","2012m01d08"],
"Realtime":null}
谁能提供一些关于为什么会这样的见解?我正在使用以下代码进行反序列化。
public void Deserialize(String jsonText, ref DataTable dt)
{
JsonSerializer json = new JsonSerializer();
json.NullValueHandling = NullValueHandling.Ignore;
json.ObjectCreationHandling = ObjectCreationHandling.Replace;
json.MissingMemberHandling = MissingMemberHandling.Ignore;
json.ReferenceLoopHandling = ReferenceLoopHandling.Serialize;
StringReader sr = new StringReader(jsonText);
JsonTextReader reader = new JsonTextReader(sr);
dt = (DataTable)json.Deserialize(reader, typeof(DataTable));
reader.Close();
}
对于解决此问题的最佳方法有什么想法吗?这适用于其他 JSON 响应!
提前致谢
【问题讨论】:
-
“以下格式似乎没有正确反序列化”您是否收到任何错误或预期结果?什么错误,什么结果?你能举个例子吗?
-
您是否使用 .NET 4.0 如果是的话,这里有一个链接也可以帮助您。drowningintechnicaldebt.com/ShawnWeisfeld/archive/2010/08/22/…
-
不幸的是它不会产生任何错误。它似乎没有反序列化。以下反序列化很好。 [{"accountID":1,"profileID":null,"name":"Pages","ID":"18d039ae0360","language":null,"type":null,"Category":null,"IsHierarchy ":false,"IntervalsEnabled":true,"IsRealtimeCompatible":true,"properties":null},(等等)