1
我使用binaryFormatter序列化发送对象。但对于ADO.NET数据集,最佳实践是什么?我注意到,在数据集的情况下,二进制格式化程序被xmlformatter覆盖?如何减小尺寸&增加序列化速度?如何为.NET远程处理(.NET Framework 3.5 SP1)序列化数据集?
我使用binaryFormatter序列化发送对象。但对于ADO.NET数据集,最佳实践是什么?我注意到,在数据集的情况下,二进制格式化程序被xmlformatter覆盖?如何减小尺寸&增加序列化速度?如何为.NET远程处理(.NET Framework 3.5 SP1)序列化数据集?
你可以告诉它,而不是使用传统的XML模式二进制模式:
myData.RemotingFormat = SerializationFormat.Binary;
您也可以尝试通过GZipStream
或DeflateStream
运行串行,但这或许需要发送它作为一个BLOB,而而不是直接远程处理。
我也做了一些近期的工作,通过protobuf-net,here, including comparison metrics来推动DataTable
- 即使你不想protobuf-tweaks,数据的数据应该可以帮助你在xml/binary和vanilla /的gzip /缩小。
有点偏离主题,但是您是否知道阻止将模式转换为无类型数据集的方法? – leppie 2010-11-12 06:20:59
@leppie - at a guess:'data.SchemaSerializationMode = SchemaSerializationMode.ExcludeSchema;' – 2010-11-12 06:23:33
不幸的是,这需要一个类型化的数据集:(我不能使用在我的情况下(MS Sync框架1.0) – leppie 2010-11-12 06:42:50