加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

webservice的压缩上传和下载

发布时间:2020-12-17 00:55:11 所属栏目:安全 来源:网络整理
导读:在编写web service时,要考虑传输速度,就要注意对大数据量文件或图片进行压缩传输,然后在客户端进行解压缩,可以减少传输过程中的时间! 以下是主要代码: ?1 // 服务端: ?2 ?[WebMethod] ?3 ???? public ? byte []?Search( string ?ID) ?4 ???? { ?5 ???
在编写web service时,要考虑传输速度,就要注意对大数据量文件或图片进行压缩传输,然后在客户端进行解压缩,可以减少传输过程中的时间!

以下是主要代码:
?1

// 服务端:
?2

?[WebMethod]
?3

????
public ? byte []?Search( string ?ID)
?4

????
{
?5

????????
//?压缩????????????
?6

????????MemoryStream?oStream?=?new?MemoryStream();
?7

????????DeflateStream?zipStream?
=?new?DeflateStream(oStream,?CompressionMode.Compress);
?8

????????zipStream.Write(bytes,?
0,?bytes.Length);
?9

????????zipStream.Flush();
10

????????zipStream.Close();
11

????????
return?oStream.ToArray();
12

????}

13


14

客户端: 15

public ?DataSet?DecompressionDataSet( byte []?bytes)
16

????
{
17

????????
?初始化流,设置读取位置18

????????MemoryStream?mStream?=?new?MemoryStream(bytes);
19

????????mStream.Seek(
0,?SeekOrigin.Begin);
20

????????
?解压缩21

????????DeflateStream?unZipStream?=?new?DeflateStream(mStream,?CompressionMode.Decompress,?true);
22

????????
?反序列化得到数据集23

????????DataSet?dsResult?=?new?DataSet();
24

????????dsResult.RemotingFormat?
=?SerializationFormat.Binary;
25

????????BinaryFormatter?bFormatter?
=?new?BinaryFormatter();
26

????????dsResult?
=?(DataSet)bFormatter.Deserialize(unZipStream);
27

????????
return?dsResult;
28

????}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读