怎样压缩LIST<T>,又怎样解压?

ilearn dggy 服务器端工程师  2013-02-22 10:24:35
我有个方法是返回LIST<T>的,数量比较大,我想压缩一下,再用WCF传回来客户端再解压,怎样做?
...全文
321 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ilearn 2013-02-23
在数据契约上用了list<t>算不算已经用了压缩技术?
回复
ilearn 2013-02-23
谢谢你!!!
回复
threenewbee 2013-02-23
引用 5 楼 ilearn 的回复:
在数据契约上用了list<t>算不算已经用了压缩技术?
不算,你看我的链接,比如说配置了GZipEncoder,那才是压缩。如果你是http绑定,你可以用抓包工具看到两者的不同。
回复
threenewbee 2013-02-22
http://www.cnblogs.com/stangray/archive/2010/03/22/1691473.html 如果你已经用了压缩技术,再在逻辑上压缩就没有太大的效果了。
回复
threenewbee 2013-02-22
引用 2 楼 ilearn 的回复:
list就是有大量文本或者可以压缩的数据,4000多条记录,是查本地局域网中几个数据库数据,再传给客户端,我的客户端在本地,都花了1分钟多一点
对,password也是关键字。
回复
ilearn 2013-02-22
list就是有大量文本或者可以压缩的数据,4000多条记录,是查本地局域网中几个数据库数据,再传给客户端,我的客户端在本地,都花了1分钟多一点
回复
threenewbee 2013-02-22
如果List中有很多重复条目,可以这么做 complist = list.GroupBy(x => x).Select(x => new { v = x.Key, c = x.Count() }) 解压 list = complist.SelectMnay(x => Enumerable.Repeat(x.c, x.v)) 如果list有公共前缀(比如说国家字段、城市字段、街道字段),可以用树状数据结构压缩。 如果list有大量文本或者可以压缩的数据,也可以直接二进制序列化,再用标准的压缩算法压缩。解压缩的时候先解压缩,再反序列化。
回复
相关推荐
发帖
C#
创建于2007-09-28

10.6w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2013-02-22 10:24
社区公告

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