微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

webservice的压缩上传和下载

在编写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

    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐