【发布时间】:2012-09-29 16:27:34
【问题描述】:
我正在使用 DataContractJsonSerializer 序列化批量数据,但遇到错误 即。 引发了“System.OutOfMemoryException”类型的异常。
public static string MyDataContractJsonSerializer(object objToSerialize, Type objType)
{
DataContractJsonSerializer ser = new DataContractJsonSerializer(objType);
System.IO.MemoryStream st1 = new System.IO.MemoryStream();
ser.WriteObject(st1, objToSerialize); //Error encountering here.. Exception of type 'System.OutOfMemoryException' was thrown.
byte[] barray = st1.ToArray();
string abc = System.Text.Encoding.ASCII.GetString(barray);
return abc;
}
我该如何解决这个问题?
请告诉我序列化批量数据的任何替代方法。
请帮帮我。
【问题讨论】:
-
你想对序列化的数据做什么?将其保存到文件中?通过网络发送?还有什么?我非常怀疑您是否想将其保留在内存中。如果数据很大,您可能会遇到问题。
-
我想把它发送到javascript(客户端浏览器)。
-
我正在发送一条消息以使用 ajax 从数据库中获取数据并希望得到响应。
-
先生,objToSerilize 包含大数据,如 DataSet 中的 10000 行。
-
有必要发回这么多数据吗?
标签: c# c#-4.0 c#-3.0 datacontractserializer