博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.net WebService 大数据量时性能的提高
阅读量:6407 次
发布时间:2019-06-23

本文共 2000 字,大约阅读时间需要 6 分钟。

1.直接返回DataSet对象

 

C#代码  
  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序列化后的字节数组
C#代码  
  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序列化后的字节数组
C#代码  
  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压缩后的字节数组
C#代码  
  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.结果图
 
  • (119.2 KB)
  • 下载次数: 26
  • (8.7 KB)

转载于:https://www.cnblogs.com/ranran/p/4024303.html

你可能感兴趣的文章
squid使用rotate轮询(分割)日志
查看>>
VS2015安装EF Power Tools
查看>>
MySQL主从复制(笔记)
查看>>
keepalived高可用集群的简单配置
查看>>
Android Java Framework显示Toast(无Activity和Service)
查看>>
通过 SignalR 类库,实现 ASP.NET MVC 的实时通信
查看>>
NavigationController修改状态条颜色
查看>>
16大跨平台游戏引擎
查看>>
NPS如何配置基于mac地址的8021x认证
查看>>
XenServer架构之XAPI的调用流程
查看>>
redhat下搭建LAMP架构
查看>>
GitHub详细教程
查看>>
raid技术的读与想
查看>>
Hbase 中Column Family 的作用
查看>>
用鸡讲解技术债务的形成过程?
查看>>
Linux下的Tftp服务
查看>>
C#将集合和Json格式互相转换的几种方式
查看>>
java连接数据库并操作
查看>>
安装.net framework 4.0时提示HRESULT 0xc8000222
查看>>
集群下文件同步问题
查看>>