WCF - 消息】的更多相关文章

请求与答复模式( Request/Reply) 这种交换模式是使用最多的一中,它有如下特征: 调用服务方法后需要等待服务的消息返回,即便该方法返回 void 类型 相比Duplex来讲,这种模式强调的是客户端的被动接受,也就是说客户端接受到响应后,消息交换就结束了. 在这种模式下,服务端永远是服务端,客户端就是客户端,职责分明. 它是缺省的消息交换模式,设置OperationContract便可以设置为此种消息交换模式 接下来我们通过实例来演示一下,参照WCF消息交换模式之单向模式中的例子,我们…
WCF消息协定概述 在生成 WCF应用程序时,开发人员通常会密切关注数据结构和序列化问题,而不必关心携带数据的消息结构. 对于这些应用程序,为参数或返回值创建数据协定的过程很简单.但是,有时完全控制 SOAP 消息的结构与控制其内容一样重要. 当必须提供互操作性或需要在消息或消息部分级别特别控制安全问题时,更是如此. 在这些情况下,您可以创建消息协定 ,使您可以指定所需的精确的 SOAP 消息的结构. 一般来说,定义消息的架构时使用数据协定就足够了.但是,有时必须精确控制如何到通过网络传输的 S…
替换 wcf 消息传输中的 命名空间,http://vanacosmin.ro/Articles/Read/WCFEnvelopeNamespacePrefix…
原文:WCF消息之XmlDictionaryWriter XmlDictionaryWriter,是一个抽象类,从该类中派生了WCF,以便执行序列化和反序列化. 它有4种格式书写器: CreateBinaryWriter,用于创建写入WCF二进制xml格式的实例 CreateMtomWriter,用于创建以MTOM格式mxl的实例 CreateTextWriter,用于创建写入文本xml的实例 (一)CreateTextWriter 以文本格式写入xml,工厂方法有3个重载: CreateTex…
WCF消息交换模式之双工通讯(Duplex) 双工通讯Duplex具有以下特点: 1它可以在处理完请求之后,通过请求客户端中的回调进行响应操作 2.消息交换过程中,服务端和客户端角色会发生调换 3.服务端处理完请求后,返回给客户端的不是reply,而是callback请求. 4.Duplex模式对Bindding有特殊的要求,它要求支持Duplex MEP(Message Exchange Pattern),如WSDualHttpBinding和NetTcpBinding 注意:在WCF预定义绑…
原文:Prism for WPF 搭建一个简单的模块化开发框架(四)异步调用WCF服务.WCF消息头添加安全验证Token 为什么选择wcf?   因为好像wcf和wpf就是哥俩,,, 为什么选择异步调用?  用起来体验相对好一点,不会因为服务的速度影响用户体验,避免页面假死 首先新建一个wcf服务程序 public class ServiceLogin : IServiceLogin { public bool Login(string username, string pwd) { if (…
单向模式(One-Way Calls): 在这种交换模式中,存在着如下的特征: 只有客户端发起请求,服务端并不会对请求进行回复 不能包含ref或者out类型的参数 没有返回值,返回类型只能为void 通过设置OperationContract的IsOneWay=True可以将满足要求的方法设置为这种消息交换模式 接下来,我们通过实例来演示这种模式,首先新建一个WcfDemo1的解决方案,添加名称为Service的类库项目作为服务端,新建IOneWay接口和 OneWay类,由于单向模式中服务端并…
双工通讯Duplex具有以下特点: 1它可以在处理完请求之后,通过请求客户端中的回调进行响应操作 2.消息交换过程中,服务端和客户端角色会发生调换 3.服务端处理完请求后,返回给客户端的不是reply,而是callback请求. 4.Duplex模式对Bindding有特殊的要求,它要求支持Duplex MEP(Message Exchange Pattern),如WSDualHttpBinding和NetTcpBinding 注意:在WCF预定义绑定类型中,WSDualHttpBinding和…
最近使用WCF作为通迅框架开发一套信息系统,系统使用传统C/S框架,系统有可能会部署在互联网上,因此决定对传输的数据进行GZIP压缩,原来在使用.NET Remoting时,可以使用插入自定义的ChannelSink来实现数据压缩,作为.NET Remoting的替代方案的WCF,实现起来也很容易,且方法不止一种,主要解决方法主要有以下四种: 通过自定义MessageEncoder和MessageEncodingBindingElement 来完成.具体的实现,可以参阅张玉彬的文章<WCF进阶:…
SOAP SOAP是Simple Object Access Protocol(简单对象访问协议)的简称 而如今SOAP已经成为了符合W3C制定的SOAP规范的消息 允许您使用 XML 在通过低层 Internet 协议连接的系统之间进行通信 它为通过网络消息传输的 XML 信息提供了标准的封套  目前为止W3C一共制定了SOAP1.1和SOAP1.2两个版本的消息规范 对应的命名空间如下 SOAP1.1:http://schemas.xmlsoap.org/soap/envelope SOAP…
1. MessageContract 序列化一个对象并生成消息的时候,希望将部分数据成员作为SOAP的报头,部分作为消息的主体.比如说,我们有一个服务操作采用流的方式进行文件的上载,除了以流的方式传输以二进制表示的文件内容外,还需要传输一个额外的基于文件属性的信息,比如文件格式.文件大小等.一般的做法是将传输文件内容的流作为SOAP的主体,将其属性内容作为SOAP的报头进行传递.这样的功能,可以通过定义消息契约来实现. ProtectionLevel和HasProtectionLevel:表示保…
----------------------------------------------消息模式:1.request\reply(默认)2.one-way(单工)[Isoneway=true]客户端有些情况希望保证消息能正确送达:(msmq(持久性的,机子重启后依然有效)和可靠性消息(短暂的)这两种技术保证)应用:日志或发布,操作需要大量时间轮训场景,这样不需要等待:3.Duplex(回调:双工)操作必须声明为oneway;防止发生死锁:回调接口不需要声明servicecontracttcp…
WCF的消息交换模式(MEP)有三种:请求/响应.单向模式和双工模式.WCF的默认MEP是请求/响应模式. 请求/响应模式操作签名代码如下,无需指定模式,默认就是. [OperationContractAttribute] string Hello(string greeting,string mesg); [OperationContractAttribute] void SaveMesg(string mesg); 请求/响应模式内容: 客户端可以传递一个或多个参数给服务操作方法,服务操作方…
1.使用WCF单项模式须知 (1).WCF服务端接受客户端的请求,但是不会对客户端进行回复 (2).使用单项模式的服务端接口,不能包含ref或者out类型的参数,至于为什么,请参考C# ref与out关键字解析 (3).使用单项模式的服务端接口没有返回值,返回类型只能为void (4).通过设置OperationContract契约的IsOneWay=True可以将满足要求的方法设置为这种消息交换模式 2.代码实例 (1).第一步 i.首先建一个名为IService的类库作为服务层,新建IOne…
本文参考  http://blog.csdn.net/tcjiaan/article/details/8274493  博客而写 添加对信息处理的类 /// <summary> /// 消息拦截 /// </summary> public class MyMessageInspector:IClientMessageInspector,IDispatchMessageInspector { //用户名密码 static private string uName = "ad…
1.最多一个参数和一个返回值,返回值和参数的类型都是消息类型. 下面的代码为定义一个消息契约的实例 [MessageContract]    public class MyMessage    {        private string operation;        private double n1;        private double n2;        private double result; //Constructor - create an empty mess…
首先在项目的config文件中定义以下结点: <system.diagnostics> <sources> <source name="System.ServiceModel.MessageLogging" switchValue="Verbose"> <listeners> <add name="xml" type="System.Diagnostics.XmlWriterTrac…
最近都在鼓捣这个WCF,因为看到说WCF比WebService功能要强大许多,另外也看了一些公司的招聘信息,貌似一些中.高级的程序员招聘,都有提及到WCF这一块,所以,自己也关心关心一下,虽然目前工作上没用用到.就到园子里面找啊找,翻啊翻,还是给我翻到几篇关于WCF消息队列的教程,其中本次推荐的是:陈希章 写的这篇:在WCF中使用消息队列,本文就在他写的这个WCF的一个基础下,完善一下他忽略到的内容以及详细步骤,在此也非常感谢陈希章的辛苦劳作,让我快捷的接触到了WCF的消息队列,非常感谢.如果有…
上周微软开发布会说.NET支持完全跨平台和并开放Core源码的新闻,让我们顿时感到.NET要迎来它的春天.虽然早在几年前.NET就能开发Android和IOS,但是这次的跨平台把Linux都放到了微软战略之中,以后的.NET Developer就可以使用Vs开发Linux应用了,Developer又有了新的选择,从微软的战略转型也可以看出互联网已经步入到了新的模式,以后不再是PC的时代,移动互联和云时代已经到来. 最近做项目时使用到了WCF,项目把数据层和程序层进行了分割,相互之间的数据传输使用…
上周微软开公布会说.NET支持全然跨平台和并开放Core源代码的新闻,让我们顿时感到.NET要迎来它的春天.尽管早在几年前.NET就能开发Android和IOS,可是这次的跨平台把Linux都放到了微软战略之中,以后的.NET Developer就能够使用Vs开发Linux应用了,Developer又有了新的选择,从微软的战略转型也能够看出互联网已经步入到了新的模式,以后不再是PC的时代,移动互联和云时代已经到来. 近期做项目时使用到了WCF,项目把数据层和程序层进行了切割,相互之间的传输数据使…
消息安全模式的证书身份验证方式,基于WSHttpBinding绑定协议的实现过程.主要内容:基本概念,然后是制作证书.服务端配置.客户端配置.总结.这里应该和Transport传输安全模式之证书身份验证对应,但是消息安全模式这里不使用https.安全基于TLS,传输层安全连接.  [0]消息安全模式之证书客户端身份验证:       消息安全模式之证书身份验证需要服务器需要一个有效的可用于TLS 加密和向客户端验证服务身份的 X.509 证书,并且客户端必须信任此服务器证书.而客户端同样要提供一…
之前曾经写过一个关于MSMQ消息队列的文章:WCF分布式开发必备知识(1):MSMQ消息队列 ,当时的目的也是用它来作为学习WCF 消息队列MSMQ编程的基础文章.在那篇文章里,我们详细介绍了MSMQ消息队列的基本概念.安装.部署.开发.调试等相关问题.今天我们来学习WCF分布式开发步步为赢(13):WCF服务离线操作与消息队列MSMQ.在WCF框架下使用MSMQ消息队列服务编程.  这里我会给出一个使用WCF MSMQ实现离线请求的DEMO示例程序. 全文结构是:[1]MSMQ基本概念[2]W…
WCF初探-1:认识WCF WCF初探-6:WCF服务配置 WCF初探-2:手动实现WCF程序 WCF初探-7:WCF服务配置工具使用 WCF初探-3:WCF消息交换模式之单向模式 WCF初探-8:WCF服务承载 (上) WCF初探-4:WCF消息交换模式之请求与答复模式  WCF初探-9:WCF服务承载 (下) WCF初探-5:WCF消息交换模式之双工通讯(Duplex) WCF初探-10:WCF客户端调用服务     WCF初探-11:WCF客户端异步调用服务  WCF初探-16:WCF数据…
WCF中常用的binding方式: BasicHttpBinding: 用于把 WCF 服务当作 ASMX Web 服务.用于兼容旧的Web ASMX 服务.WSHttpBinding: 比 BasicHttpBinding 更加安全,通常用于 non-duplex 服务通讯.WSDualHttpBinding: 和 WSHttpBinding 相比,它支持 duplex 类型的服务.WSFederationHttpBinding: WS-Federation 安全通讯协议.NetTcpBind…
数据协定继承 已知类型和泛型解析程序 Juval Lowy 下载代码示例 自首次发布以来,Windows Communication Foundation (WCF) 开发人员便必须处理数据协定继承方面的麻烦(一个称为“已知类型”的问题). 在本文中,我首先说明这个问题的来源,讨论 Microsoft .NET Framework 3.0 和 .NET Framework 4 中的可用缓解方法,然后演示我用来完全解决这个问题的方法. 除此之外,还会介绍一些高级 WCF 编程技术. 按值与 按引用…
引用地址:https://msdn.microsoft.com/zh-cn/magazine/cc163302.aspx  使用自定义行为扩展 WCF Aaron Skonnard 代码下载位置: ServiceStation2007_12.exe (165 KB) Browse the Code Online   目录 WCF 可扩展性 调度程序/代理扩展 实现自定义扩展 参数检查器 消息检查器 操作调用程序 使用行为应用自定义扩展 将行为添加到运行时 添加具有属性和配置的行为 行为验证和绑定…
原文地址:http://www.cnblogs.com/Anima0My/archive/2008/04/16/1156146.html WCF中常用的binding方式: BasicHttpBinding: 用于把 WCF 服务当作 ASMX Web 服务.用于兼容旧的Web ASMX 服务. WSHttpBinding: 比 BasicHttpBinding 更加安全,通常用于 non-duplex 服务通讯. WSDualHttpBinding: 和 WSHttpBinding 相比,它支…
前言: 在WCF初探-5:WCF消息交换模式之双工通讯(Duplex)博文中,我讲解了双工通信服务的一个应用场景,即订阅和发布模式,这一篇,我将通过一个消息发送的例子讲解一下WCF客户端如何为双工服务创建回调对象. 双工服务指定一个回调协定,客户端应用程序必须实现该协定以便提供一个该服务能够根据协定要求调用的回调对象.虽然回调对象不是完整的服务(例如,您无法使用回调对象启动一个通道),但是为了实现和配置,这些回调对象可以被视为一种服务. 双工服务的客户端必须: 实现一个回调协定类. 创建回调协定…
前言: 在前面的文章中,我们定义的服务协定上都会有一个ServiceContract的特性来修饰,这是因为服务契约的实现要靠ServiceContractAttribute 属性定义,然后使用一个或多个类(或接口)方法中的 OperationContractAttribute 属性定义协定的服务操作. 实现服务协定后并将其与WCF 绑定和 EndpointAddress 对象一起使用时,此服务协定将公开以供客户端使用. 公开的信息由 ServiceContractAttribute 表示,其接口…
前言: 在前面的文章中,我们定义服务协定时,在它的操作方法上都会加上OperationContract特性,此特性属于OperationContractAttribute 类,将OperationContract应用于方法,以指示该方法实现作为服务协定(由 ServiceContractAttribute 属性指定)一部分的服务操作.OperationContractAttribute 属性声明方法是服务协定中的操作. 只有具有 OperationContractAttribute 属性的方法可…