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