1.直接返回DataSet对象

  1. [WebMethod(Description = "直接返回DataSet对象")]
  2. public DataSet GetUserListDateSet()
  3. {
  4. SqlConnection sqlCon = new SqlConnection("Data Source=.,1444;Initial Catalog=StudyNet;Persist Security Info=True;User ID=**;Password=******");
  5. SqlCommand cmd = new SqlCommand();
  6. cmd.Connection = sqlCon;
  7. cmd.CommandText = "select * from T_User";
  8. SqlDataAdapter da = new SqlDataAdapter(cmd);
  9. DataSet ds = new DataSet();
  10. da.Fill(ds);
  11. return ds;
  12. }
2.返回DataSet对象用Binary序列化后的字节数组
  1. [WebMethod(Description = "返回DataSet对象用Binary序列化后的字节数组")]
  2. public byte[] GetUserListDateSetBytes()
  3. {
  4. DataSet ds = GetUserListDateSet();
  5. //序列化
  6. BinaryFormatter ser = new BinaryFormatter();
  7. MemoryStream stream = new MemoryStream();
  8. ser.Serialize(stream, ds);
  9. return stream.GetBuffer();
  10. }
3.返回DataSetSurrogate对象用Binary序列化后的字节数组
  1. [WebMethod(Description = "返回DataSetSurrogate对象用Binary序列化后的字节数组")]
  2. public byte[] GetUserListDateSetSurrogateBytes()
  3. {
  4. DataSet ds = GetUserListDateSet();
  5. DataSetSurrogate dss = new DataSetSurrogate(ds);
  6. //序列化
  7. BinaryFormatter ser = new BinaryFormatter();
  8. MemoryStream stream = new MemoryStream();
  9. ser.Serialize(stream, dss);
  10. return stream.GetBuffer();
  11. }
4.返回DataSetSurrogate对象用Binary序列化并Zip压缩后的字节数组
  1. [WebMethod(Description = "返回DataSetSurrogate对象用Binary序列化并ZIP压缩后的字节数组")]
  2. public byte[] GetUserListDateSetSurrogateZipBytes()
  3. {
  4. DataSet ds = GetUserListDateSet();
  5. DataSetSurrogate dss = new DataSetSurrogate(ds);
  6. //序列化
  7. BinaryFormatter ser = new BinaryFormatter();
  8. MemoryStream stream = new MemoryStream();
  9. ser.Serialize(stream, dss);
  10. //压缩
  11. return Compress(stream.ToArray());
  12. }
  13. /// <summary>
  14. /// 压缩数据
  15. /// </summary>
  16. /// <param name="data"></param>
  17. /// <returns></returns>
  18. public byte[] Compress(byte[] data)
  19. {
  20. MemoryStream ms = new MemoryStream();
  21. GZipStream zipStream = new GZipStream(ms, CompressionMode.Compress);
  22. zipStream.Write(data, 0, data.Length);//将数据压缩并写到基础流中
  23. zipStream.Close();
  24. return ms.ToArray();
  25. }
  5.结果图

 

.net WebService 大数据量时性能的提高的更多相关文章

  1. MySQL大数据量分页性能优化

    mysql大数据量使用limit分页,随着页码的增大,查询效率越低下. 测试实验 1.   直接用limit start, count分页语句, 也是我程序中用的方法: select * from p ...

  2. 大数据量时Mysql的优化

    (转自网络) 如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB.对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求.这个时候NoSQL的出现暂时 ...

  3. sql server 2005 大数据量插入性能对比

    sql server 2005大数据量的插入操作 第一,写个存储过程,传入参数,存储过程里面是insert操作, 第二,用System.Data.SqlClient.SqlBulkCopy实例方法, ...

  4. 关于webservice大数据量传输时的压缩和解压缩

    当访问WebSerivice时,如果数据量很大,传输数据时就会很慢.为了提高速度,我们就会想到对数据进行压缩.首先我们来分析一下. 当在webserice中传输数据时,一般都采用Dataset进行数据 ...

  5. 大数据量时 Mysql LIMIT如何正确对其进行优化(转载)

    以下的文章主要是对Mysql LIMIT简单介绍,我们大家都知道LIMIT子句一般是用来限制SELECT语句返回的实际行数.LIMIT取1个或是2个数字参数,如果给定的是2个参数,第一个指定要返回的第 ...

  6. 【原创】大数据量时生成DataFrame避免使用效率低的append方法

      转载请注明出处:https://www.cnblogs.com/oceanicstar/p/10900332.html      ★append方法可以很方便地拼接两个DataFrame df1. ...

  7. Android, BaseAdapter 处理大数据量时的优化

    Android优化 最常见的就是ListView, Gallery, GridView, ViewPager 的大数据优化  图片优化  访问网络的优化优化的原则: 数据延迟加载  分批加载  本地缓 ...

  8. 【MYSQL】mysql大数据量分页性能优化

    转载地址: http://www.cnblogs.com/lpfuture/p/5772055.html https://www.cnblogs.com/shiwenhu/p/5757250.html ...

  9. mysql select limit 大数据量查询 性能终极提升方法

    还是广告位 我们的使用mysql的时候总是想当然的使用 select × from tables where a>0 order by id desc limit 500000,200 当我们真 ...

随机推荐

  1. RabbitMQ使用笔记

    一.安装 1.下载所需安装包 下载服务端(原因在于RabbitMQ服务端代码是使用并发式语言erlang编写的):http://www.rabbitmq.com/install-windows.htm ...

  2. sqlserver实现树形结构递归查询(无限极分类)

    SQL Server 2005开始,我们可以直接通过CTE来支持递归查询,CTE即公用表表达式 百度百科 公用表表达式(CTE),是一个在查询中定义的临时命名结果集将在from子句中使用它.每个CTE ...

  3. 正确理解 SqlConnection 的连接池机制[转]

    作者: eaglet 转载请注明出处 .net 中通过 SqlConnection 连接 sql server,我们会发现第一次连接时总是很耗时,但后面连接就很快,这个其实和SqlConnection ...

  4. HTTP压力测试工具wrk的安装及测试

    本次在VMware虚拟机的CentOS6.3系统中进行安装wrk压测工具,具体如下: 一.预先安装需求项 为了安装顺利,不受权限的限制,首先可以把用户切换为root用户# su + 输入root用户对 ...

  5. [转帖]IPV6取代IPV4之路 为何道阻且长?

    IPV6取代IPV4之路 为何道阻且长? 经济学人公众号 IPV6作为IPV4的续命神术,从被提出到现今,逾26年之久.而IPV6在中国更是犹抱琵琶半遮面,千呼万唤难出来,IPV6取代IPV4之路,为 ...

  6. 使用Word 进行UTF8 以及字符串编码的转换操作

    1. 使用Word文档能够实现 字符串和utf8编码的转换. 快捷键是 ALT+X 在知乎的一个里面看到一个说法: ㍾ ㍽ ㍼ ㍻ - 这四个在Unicode表里是倒序排列的,而且只预留了这四个年号, ...

  7. hdu6438 Buy and Resell

    多少年不写题了... (我把每一天看作是一个商品,第i天是第i个商品) 一开始看了半天看出来一个性质:买的所有商品中最贵的不会比卖的所有商品中最便宜的贵,然后似乎没有什么用处.... 所以最后还是看题 ...

  8. BZOJ5118 Fib数列2(矩阵快速幂)

    特殊矩阵的幂同样满足费马小定理. #include<iostream> #include<cstdio> #include<cmath> #include<c ...

  9. C++ STL 常用查找算法

    C++ STL 常用查找算法 adjacent_find() 在iterator对标识元素范围内,查找一对相邻重复元素,找到则返回指向这对元素的第一个元素的迭代器.否则返回past-the-end. ...

  10. winform 利用委托实现窗体传值

    父窗体:Form1    ,有个 textbox1.text ,有个button1 子窗体:Form2  ,有个 textbox1.text ,有个button1 修改Form1 的textbox1. ...