Web Service传输DataSet

mingcsharp 2012-05-16 12:29:41
Web Service传输DataSet的想法和实践
网上关于这个问题的说法,提到一个DataSetSurrogate
网上又有人说这个东西只是.net1.1的替代物,也不是想像的那么好,故来请教各位大神?


以后的版本中还能不能用,现在都3.5,4.0了甚至更高了,是不是也有替代品,求知道
...全文
130 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yutian_31 2012-05-16
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
DataSet冗余数据很多,每个表最多时内部有三个备份。
就是一个内存中的数据库。

这样的东西通过WebService传送,效率当然低,尤其是数据量大时。
DataSetSurrogate也只是压缩了下。

还是泛型列表效率高。

linq不会淘汰吧。
[/Quote]
+1
xky96 2012-05-16
  • 打赏
  • 举报
回复
DataSet冗余数据很多,每个表最多时内部有三个备份。
就是一个内存中的数据库。

这样的东西通过WebService传送,效率当然低,尤其是数据量大时。
DataSetSurrogate也只是压缩了下。

还是泛型列表效率高。

linq不会淘汰吧。
孟子E章 2012-05-16
  • 打赏
  • 举报
回复
是的,另外,还可以使用GZipStream 压缩,参见
http://www.codeproject.com/Articles/10635/Compressing-Persisted-DataSets
mingcsharp 2012-05-16
  • 打赏
  • 举报
回复
private static byte[] BinarySerializeDataTable(DataTable dt)
{
try
{
IFormatter bf = new BinaryFormatter();
MemoryStream ms = new MemoryStream();
dt.RemotingFormat = SerializationFormat.Binary;
bf.Serialize(ms, dt);
byte[] by = ms.ToArray();
ms.Close();
return by;
}
catch
{
return null;
}
}

private static byte[] BinarySerializeDataSet(DataSet ds)
{
try
{
IFormatter bf = new BinaryFormatter();
MemoryStream ms = new MemoryStream();
ds.RemotingFormat = SerializationFormat.Binary;
bf.Serialize(ms, ds);
byte[] by = ms.ToArray();
ms.Close();
return by;
}
catch
{
return null;
}
}
这么说就是我这样了???
孟子E章 2012-05-16
  • 打赏
  • 举报
回复
现在采用RemotingFormat

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧