- 浏览: 302476 次
- 性别:
- 来自: 太原
文章分类
最新评论
-
天使建站:
只有代码,不能测试,太不方便,还是结合这里的一起看吧 ...
JQuery遍历JSON -
zxyzcmpy:
设置了之后依然没用怎么办?
HTTP 错误 404.2 – Not Found. -
gongcao:
这个ext和amchart都是那个版本啊
amChart覆盖Div层 -
wanmingtom:
谁能看完估计得成神经病
amchart柱状图、折线图配置解析 -
falloutxxx2:
终于发现一个 2.0 的破解谢谢!~!!
amcharts 常用SWF破解
第一步:创建“WCF服务库” “文件(F)”->“新建项目(P)...”打开新建项目对话框。在左侧的“项目类型”中选择“WCF”,然后再在右侧的“模板”中选择“WCF服务库”。 在下面的“名称”文本框中,填写我们要创建的WCF服务库的项目名称“Wcf_MassData”。 点击确定,会创建出我们的WCF服务库项目,在解决方案中会自动为我们生成两个类文件“IService.cs”和“Service.cs”。这两个类文件是两个WCF示例文件,对我们开发没有什么用处,现在我们删掉这两个文件。 第二步:创建DataTransfers与IDataTransfers服务接口类 在“解决方案窗口”中,我们右击Services项目名,选择“添加”,再单击“类”,在弹出的“添加新项”窗口中,选择“类”,并在“名称”文本框中写入项名称“IDataTransfers.cs”和“DataTransfers.cs”。 第三步:为服务接口类编写代码 IDataTransfers.cs代码: using System;
using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; using System.ServiceModel; using System.Text; namespace Wcf_MassData { [ServiceContract] public interface IDataTransfers { /// <summary> /// 获取所用压缩后字节流 /// </summary> /// <returns></returns> [OperationContract] byte[] GetAllBuffer(); /// <summary> /// 设置压缩后字节流分块,每一块的大小 /// </summary> /// <param name="length"></param> [OperationContract] void SetBufferLength(int length); /// <summary> /// 读取压缩后字节流一块,并提升字节流的位置 /// </summary> /// <returns></returns> [OperationContract] bool ReadNextBuffer(); /// <summary> /// 获取当前块的字节流 /// </summary> /// <returns></returns> [OperationContract] byte[] GetCurrentBuffer(); } }DataTransfers.cs代码:
using System;
using System.Data; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters.Binary; using System.IO; using System.IO.Compression; using System.Collections.Generic; using System.Linq; using System.ServiceModel; using System.Text; namespace Wcf_MassData { public class DataTransfers : IDataTransfers { /// <summary> /// 无参数构造函数 /// </summary> public DataTransfers() { InitBuffers(InitTestDataSet()); } private byte[] buffer_all = null; private byte[] buffer_currect = null; private int get_buffer_length = 1000; private long remain_length; private MemoryStream stream; /// <summary> /// 生成一个测试的数据集 /// </summary> /// <returns></returns> private DataSet InitTestDataSet() { DataSet ds = new DataSet("test"); DataTable table = new DataTable("test"); DataColumn column = new DataColumn("test"); column.DataType = Type.GetType("System.String"); table.Columns.Add(column); DataRow row; for (int i = 0; i < 10000; i++) { row = table.NewRow(); row["test"] = "测试数据 "+(i+1); table.Rows.Add(row); } ds.Tables.Add(table); return ds; } /// <summary> /// 初始化压缩字节流 /// </summary> /// <param name="ds"></param> private byte[] InitBuffers(DataSet ds) { IFormatter formatter = new BinaryFormatter(); MemoryStream stream_ = new MemoryStream(); formatter.Serialize(stream_, ds); buffer_all = stream_.ToArray(); stream_.Close(); byte[] bytes_c = Compression(buffer_all, CompressionMode.Compress); stream = new MemoryStream(bytes_c); stream.Position = 0; remain_length = stream.Length; return bytes_c; } /// <summary> /// 提供内部使用压缩字流的方法 /// </summary> /// <param name="data"></param> /// <param name="mode"></param> /// <returns></returns> private byte[] Compression(byte[] data, CompressionMode mode) { DeflateStream zip = null; try { if (mode == CompressionMode.Compress) { MemoryStream ms = new MemoryStream(); zip = new DeflateStream(ms, mode, true); zip.Write(data, 0, data.Length); zip.Close(); return ms.ToArray(); } else { MemoryStream ms = new MemoryStream(); ms.Write(data, 0, data.Length); ms.Flush(); ms.Position = 0; zip = new DeflateStream(ms, mode, true); MemoryStream os = new MemoryStream(); int SIZE = 1024; byte[] buf = new byte[SIZE]; int l = 0; do { l = zip.Read(buf, 0, SIZE); if (l == 0) l = zip.Read(buf, 0, SIZE); os.Write(buf, 0, l); } while (l != 0); zip.Close(); return os.ToArray(); } } catch { if (zip != null) zip.Close(); return null; } finally { if (zip != null) zip.Close(); } } IDataTransfers 成员#region IDataTransfers 成员 /// <summary> /// 获取所有字节流 /// </summary> /// <returns></returns> public byte[] GetAllBuffer() { if (buffer_all != null) return buffer_all; else return null; } /// <summary> /// 设置压缩后字节流分块,每一块的大小 /// </summary> /// <param name="length"></param> public void SetBufferLength(int length) { this.get_buffer_length = length; } /// <summary> /// 读取压缩后字节流一块,并提升字节流的位置 /// </summary> /// <returns></returns> public bool ReadNextBuffer() { bool bo; if (remain_length > 0) { if (remain_length > get_buffer_length) { buffer_currect = new byte[get_buffer_length]; stream.Read(buffer_currect, 0, get_buffer_length); remain_length -= get_buffer_length; } else { buffer_currect = new byte[remain_length]; stream.Read(buffer_currect, 0, (int)remain_length); remain_length = 0; } bo = true; } else bo = false; return bo; } /// <summary> /// 获取当前块的字节流 /// </summary> /// <returns></returns> public byte[] GetCurrentBuffer() { //if (buffer_currect != null) // return buffer_currect; //else // return null; DataSet ds = InitTestDataSet(); byte[] b = InitBuffers(ds); return b; } #endregion } }
发表评论
-
asp.net中Session过期设置方法
2012-04-11 08:49 1390在Asp.net应用中,很多人会遇到Session过期设置 ... -
禁止复制文本的代码 HTML
2012-02-09 15:37 1483<!DOCTYPE HTML PUBLIC &qu ... -
Word检索COM类工厂中CLSID的组件时失败80070005解决办法
2012-01-18 10:36 2443在网上找了很多很多 ... -
word引用错误
2012-01-12 15:55 1291错误 4317 无法嵌入互操作类型“Microsoft.Off ... -
C#去掉HTML标记
2012-01-10 15:45 1024using System.Text.RegularExp ... -
C#文件操作
2012-01-10 10:07 968using System; usin ... -
Binary转换byte[] Linq方式
2012-01-04 14:46 5901把图片存放到数据库里,存为Image类型: ... -
c#Word操作3
2011-12-31 15:36 9171.建立word模板文件 person.dot 用书签 ... -
C# Word操作
2011-12-30 17:59 1141//生成WORD程序对象和 ... -
C#操作Word生成目录
2011-12-30 17:38 4306OperateWord ow = new OperateWor ... -
关于"不能启用此约束,因为不是所有的值都具有相应的父值。"的问题
2011-12-27 15:12 709ds.Tables[0].Rows[0]["S ... -
(转)完美解决方案,可排除DATASET不支持System.Nullable错误
2011-12-27 15:11 4099using System; using System. ... -
Linq Like
2011-12-13 11:49 1039System.Data.Linq.SqlClient Lik ... -
SSO解决方案大全(cookie跨域)
2011-12-02 17:46 1866前段时间为我们的系统做SSO(单点登录)参考了很多资料,其中包 ... -
ASP.NET的Cookie跨域问题
2011-12-02 17:45 2312将Cookie的有效范围限制到域。 默认情况下,Cookie ... -
.nET2.0小技巧
2011-12-01 17:16 16581. 在提交页面之后,保持滚动条的位置 可以在page ... -
.NET日期格式化
2011-11-30 10:41 978GridView中Dataformatstring 格式化日期 ... -
HTTP 错误 404.2 – Not Found.
2011-11-18 19:55 2357HTTP 错误 404.2 – Not Found. 由于 W ... -
WCF布署问题1 :HTTP 错误 404.17 - Not Found 请求的内容似乎是脚本,因而将无法由静态
2011-11-18 19:03 4128.Net3.5的WCF服务在IIS7中发布后,在IE中访问.s ... -
amcharts (.net)相关属性说明
2011-11-18 16:36 1985Axes 轴设置 CategoryA ...
相关推荐
双通道服务允许服务端主动向客户端推送数据,这在大数据传输中非常有用,因为服务端可以控制数据的发送速率,避免客户端一次性接收大量数据导致内存压力。 总结来说,处理WCF中的大数据量传输需要综合运用批量处理...
总的来说,WCF数据压缩传输是一种有效优化通信效率的技术,尤其在处理大数据量和低带宽环境时。通过自定义编码器,我们可以轻松地将这一功能整合到WCF服务中,但同时也要注意潜在的性能和安全影响。
本文将深入探讨如何在WCF中实现大数据量的高效传输,特别是涉及到数据的压缩和分段传输。 首先,让我们了解大数据量在WCF中的挑战。当发送或接收大数据对象,如Dataset,时,可能会导致性能下降、内存压力增大以及...
在WCF中,处理大数据量时,直接将整个数据对象加载到内存可能会导致性能问题和资源消耗过大。因此,WCF引入了流传输模式,允许数据以流的形式进行处理,而不是一次性加载所有数据。流模式通过减少内存占用和提高传输...
2. 使用HTTPS协议和Transport安全模式,启用SSL/TLS以保证数据传输的安全性。 3. 配置X.509证书以增强服务认证和数据加密。 4. 对于“WCFX509-原始”和“WCFX509-加密”这两个示例,可以研究它们在配置上的差异,...
2. 检查数据契约:验证数据类型是否正确序列化和反序列化,确保跨网络的数据传输不会出现问题。 3. 识别兼容性问题:如果服务升级,分析器可以帮助确定新版本是否与现有客户端兼容。 4. 性能评估:通过元数据分析,...
总之,WCF元数据浏览器是WCF开发过程中不可或缺的工具,它极大地促进了服务的可发现性和互操作性,提高了开发效率。正确理解和使用这个工具,对于理解WCF服务的工作原理和服务之间的通信方式至关重要。
本文将深入探讨Wcf在处理大数据传输时的挑战、解决方案以及相关的代码实现。 首先,我们要理解WCF传输大数据时面临的问题。默认情况下,WCF使用SOAP协议,这是一种重量级的消息格式,包含大量头部信息,这在传输...
WCF在网络传输中,大数据量传输造成网络阻塞,宽带无法承受; 2. 解决方案 解决WCF在网络传输中的大数据量问题: A. 需要把相关数据序列化成字节流,再对字节流进行压缩,再进行传输,到了客户端再做反向操作便可...
在处理大文件传输时,WCF 提供了一种分块传输机制,以解决一次性传输大文件可能导致的性能问题和网络拥塞。本示例将探讨如何在 WCF 中实现大文件的分块传输。 在传统的文件传输中,如果文件过大,一次性传输可能会...
使用WCF诊断工具,如消息日志、性能计数器和跟踪,可以帮助定位和解决大型数据传输中的问题。 ### 10. 示例代码 教程中的“11_大型数据和流”可能是实际的代码示例,展示了如何在C#中使用VS2008实现WCF服务,处理...
在本聊天程序中,WCF很可能作为后台服务,处理客户端的连接、数据传输和消息路由,确保用户之间能即时发送和接收画板操作和聊天信息。 【画板】部分是程序的核心功能之一,它允许用户通过鼠标或其他输入设备在屏幕...
在这个“WCF压缩传输”的案例中,我们重点关注的是如何在WCF服务中实现数据传输的压缩,以提高网络效率并减少带宽消耗。 **为什么要进行WCF传输压缩?** 在互联网环境中,数据传输的速度受到网络带宽的限制。当传输...
WCF编程系列之wcf使用压缩提高传输数据性能的方法
本示例主要关注的是WCF中的Stream传输模式,这是一种高效的数据传输方式,特别适用于处理大容量数据,如文件上传或下载。 Stream传输模式在WCF中允许数据以流的形式进行处理,而不是一次性加载到内存中。这种方式...
标题中的"加密传输数据"是指在WCF通信过程中确保数据的保密性,防止未经授权的第三方窃取或篡改信息。这通常通过使用SSL/TLS协议来实现,该协议可以为网络通信提供端到端的安全保障,包括数据加密、服务器身份验证和...
为了实现流传输,我们可以使用WCF的`Stream`类型参数,这可以有效地处理大文件,因为数据不是一次性加载到内存中,而是按需读取和发送。 接下来,客户端部分。在本项目中,客户端程序选用Windows Presentation ...
在WCF中,数据传输是通过消息传递完成的,而这些消息可能包含大量数据,尤其在处理大数据量或者远程通信时,数据传输效率和网络带宽的利用就成了关注的重点。为了优化这种状况,WCF提供了数据压缩的功能,使得数据在...
在.NET框架中,Windows Communication Foundation (WCF) 是一种用于构建分布式应用程序的强大工具,它提供了丰富的功能,包括数据传输、安全、事务等。在某些情况下,为了提高网络传输效率和减少带宽消耗,我们可能...
在网络通信中,如果数据量大,传输时间会显著增加,特别是在低带宽环境下。因此,压缩数据可以提高传输效率,降低延迟,提升用户体验。Silverlight与WCF结合使用时,可以通过压缩数据来优化性能,特别是对于大量数据...