WCF双工学习笔记】的更多相关文章

WCF双工的作用在于服务端执行某个方法的时候调用客户端的方法,有点类似委托的感觉,实际项目中在什么情况下使用还没想到. WCF双工支持两种bind,一是nettcp.另一个是wsDualHttp,这里只说netTcp的双工. 和普通的WCF通信一样, 首先创建契约, 1.回调函数契约 [ServiceContract] public interface ICallback { [OperationContract(IsOneWay = true)] void DisplayResult(doub…
最近找工作,面试时经常被问懂不懂WCF.不少招聘高级.NET工程师的要求上都 写着有WCF开发经验的优先考虑.我对于WCF仅仅是通过看一些教学视频这种山寨学习法了解一些.现在要下决心好好学习一下WCF了,所以在网上找了一本 名为<WCF揭秘>的电子书,看目录好像还不错,网上评论一般,但我手头找不到其他WCF电子书籍了,就是它吧. 言归正传,现在就开始吧! WSDL WSDL(Web Services Description Language,Web服务描述语言)为将JAVA开发的应用程序与用C…
1,Dupex(双工) MEP(消息交换模式),服务端回调(Callback)客户端操作 2,客户端调用服务时,附加上一个回调对象(InstanceContext).服务端处理服务请求时,通过该回调对象调用客户端操作. 3,WCF系统设计常用四层结构:Contracts(契约),Services(服务),Hosting(服务寄宿),Clients(客户端) 4,客户端调用服务,需要服务契约:服务端回调客户端操作,同样需要回调契约.回调契约通过ServiceContract(服务契约)特性的Cal…
WF(Windows Workflow Foundation,Windows工作流基础)为.NET提供了一种基于模型的.声明方式的过程执行引擎,它改变了传统的通过一行行编写代码来开发服务功能的方式. WF包含三个核心组件:活动框架(activity framework).运行时环境(runtime environment).工作流设计器(workflow designer). WF不是什么 工作流这个词在软件开发领域和相关社区里已经被“滥用”了.所以弄清楚WF在这些流行的工作流概念中到底指的是哪…
可信赖会话 WCF的可信赖会话在绑定层保证消息只会被传输一次,并且保证消息间的顺序.当使用TCP通信时,协议本身保证了可靠性,但它只在两点间的网络 包这个层面提供了这样的保证.WCF的可信赖会话特性保证了在传输过程中消息不会丢失.重复或错位.这种保证是消息层面的,且适用于任何数目节点间的通 信.另外,使用可信赖会话时,WCF会重连掉线的连接,在重连失败时还会释放会话占用的相关资源.可信赖会话还会通过调整消息的发送频率来缓解网络拥挤. 为使用WCF的可信赖会话,必须选择支持可信赖会话的绑定.支持这…
使用DataContractSerializer 终结点(包括地址.绑定.契约)可通过代码以编程方式添加到服务中.如: using(ServiceHost host =new ServiceHost(typeof(DerivativesCalculator), new Uri[] { new Uri("http://localhost:8000/Derivatives") })) { host.AddServiceEndpoint(typeof(IServiceViewOfServic…
背景知识 WCF提供了一种语言为软件通信建模,称作服务模型.使用更底层的编程架构提供的类可以从这种语言建立的模型中生成可用的通信软件. 在服务模型使用的语言中,负责通信的软件部分称为服务(service).一个服务具有一个或多个通信的终结点,终结点包括地址.绑定和契约. 地址的作用比较简单,它通过使用URL指定服务的唯一地址. 绑定指定了客户端与服务器间的通信协议.绑定至少需要分别提供一种编码消息和传输消息的协议. 契约指定了在一个终结点可以执行的操作. 以上节中的契约为例: }; string…
WCF 学习笔记之双工实现 其中 Client 和Service为控制台程序 Service.Interface为类库 首先了解契约Interface两个接口 using System.ServiceModel; using System.ServiceModel.Channels; namespace Artech.WcfServices.Service.Interface { [ServiceContract(Namespace = "http://www.artech.com/"…
  1. 添加service:     2.调用WCF BasicHttpBinding myBinding = new BasicHttpBinding(); myBinding.Name = "BasicHttpBinding_IAuthService"; myBinding.Security.Mode = BasicHttpSecurityMode.None; myBinding.Security.Transport.ClientCredentialType = HttpClie…
WCF学习笔记之事务编程 一:WCF事务设置 事务提供一种机制将一个活动涉及的所有操作纳入到一个不可分割的执行单元: WCF通过System.ServiceModel.TransactionFlowAttribute特性定义在契约的相应操作方法上: TransctionFlowOption三个选项:NotAllowed.Allowed.Mandatory不同的事务流转策略: 1:NotAllowed(默认) 客户端的事务不会允许被流转到服务端,服务端也不会试图去接收流入的事务: 2:Allowe…
WCF学习笔记之传输安全 最近学习[WCF全面解析]下册的知识,针对传输安全的内容做一个简单的记录,这边只是简单的记录一些要点:本文的内容均来自[WCF全面解析]下册: WCF的传输安全主要涉及认证.消息一致性和机密性三个主题:认证是双向认证(服务端与客户端互认证):一致性传输内容不被篡改:机密性不被乱读取: 三个安全行为:认证.授权.审核 WCF两种安全模式:Transport安全模式.Message安全模式 (1)Transport安全模式 优点:比Message高性能  局限:依赖具体的传…
WCF 学习笔记之异常处理 1:WCF异常在配置文件 <configuration> <system.serviceModel> <behaviors> <serviceBehaviors> <behavior name="serviceDebuBehavior"> <serviceDebug includeExceptionDetailInFaults="true" /> </behav…
接上文 多线程编程学习笔记——使用异步IO 接上文 多线程编程学习笔记——编写一个异步的HTTP服务器和客户端 接上文 多线程编程学习笔记——异步操作数据库 本示例描述了如何创建一个WCF服务,并宿主在命令行应用程序中,客户端可以访问服务元数据,并以异步的方式消费它. 首先,我们创建了一个WCF服务.关于如何创建WCF服务,可以参考我之前的文章(WCF学习之旅—第三个示例之一(二十七)至WCF学习之旅—第三个示例之五(三十一)) 然后,我们为了调用了上面示例中已经存在的异步调用方式,在之前客户端…
概述 WCF陆陆续续也用过多次,但每次都是浅尝辄止,以将够解决问题为王道,这几天稍闲,特寻了些资料看,昨晚尝试使用WCF的双工模式实现了一个简单的即时通讯程序,通过服务端转发实现客户端之间的通讯.这只是个Demo,没有考虑异常处理和性能问题.解决方案结构如下: 契约 using System; using System.Collections.Generic; using System.Linq; using System.ServiceModel; using System.Text; usi…
之前的小项目做完了,到了总结经验和更新学习笔记的时间了.开始正题之前先啰嗦一下,对之前的学习目标进行一个调整:“根据代码生成表”与“生成数据库脚本和变更脚本”合并为“Code First模式日常使用篇”,增加现在这篇“错误汇总”,增加“Code First模式与其他模式混合使用与Fluent API篇”,“生成视图”因为这次在项目中没有使用,最后研究后再写出来.通过项目实战,觉得EF并不像之前想象中的这么容易上手.问题不是EF设计的不好,EF使用起来其实相当便捷,多数数据库操作一两行代码就能搞定…
这里列出所有 Dynamic CRM 2013学习笔记 系列文章,方便大家查阅.有任何建议.意见.需要,欢迎大家提交评论一起讨论. 本文原文地址: Dynamic CRM 2013学习笔记 系列汇总 一. 插件 Dynamic CRM 2013学习笔记(一)插件输入实体参数解析 Dynamic CRM 2013学习笔记(二)插件基本用法及调试 Dynamic CRM 2013学习笔记(四)单据编号及插件批量注册工具 Dynamic CRM 2013学习笔记(五)禁止修改.删除审批通过后的单据 D…
前言 起初开始写博文主要是记录学习过程中对学到内容的自我总结和理解,同时也希望本人的理解可以帮助到一些走在学习路上的朋友.但是令我没有想到的是,我总结的博文得到了广大园友的评论和支持,正是博友的支持,才给了我继续坚持下去的动力,因为在这里我得到了认可,听到了广大园友的声音.也正是因为大家的支持,在一年的时间里,我的博客在博客园里也聚集了大量的人气,从而得到了人民邮电出版社图灵公司的编辑的青睐.编辑通过给我留站内信联系到了我,并告诉我希望可以写一本关于C#的书籍. 听到这个消息,我激动不已,因为平…
目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 背景 自接触编程以来,一直听过这个名词Remoting,但是对他了解少之又少,近日有点时间,参考研究研究. 其相关概念本章不做详解,具体大家可以看下  http://baike.baidu.com/view/742675.htm?fr=aladdin  ,写的很详细. .Net Remoting概念 概念:一种分布式处理方式.从微软的产品角度来看,可…
http://www.cnblogs.com/jillzhang/archive/2010/04/04/1704388.html http://leelei.blog.51cto.com/856755/876710 http://www.cnblogs.com/wlflovenet/archive/2011/10/28/WCFREST.html WCF学习笔记(5)——wcf序列化List<T>并返回 http://www.cnblogs.com/xwlyun/archive/2013/01/…
Thrift学习笔记 一:thrift介绍 Thrift是facebook开发的用来处理各不同系统之间数据通讯的rpc服务框架,后来成为apche的开源项目.thrift支持多种程序语言,包括Java,Python,Ruby,JavaScript,Node.js,Go,C,C++,C#,Erlang,Delphi,Perl,Php,SmallTalk,OCaml,Haxe,Haskell,D语言.Thrift采用IDL(Interface Defination Language)描述性语言来定义…
目录 一:引言 二:.NET技术体系 三:常用工具汇总 四:学习资源汇总 五:书籍推荐 六:关于阅读技术书籍的经验 七:总结   一:引言 因为工作调整,从PHP开发零基础转型到.NET开发,前期没有太多空闲时间去系统学习.只好独辟蹊径,寻找快速掌握满足当前需求的方法,和大家分享: <一>:先搜集.NET平台重点知识点的概念名称,然后通过网络搜集该知识点的学习资料,尽可能宏观地了解这个全新技术体系的语法结构,涉及的编程练习题反复练习: <二>:逐行阅读工程源代码,再通过网络学习遇到…
目录 前言 Spring.NET学习笔记——前言 第一阶段:控制反转与依赖注入IoC&DI Spring.NET学习笔记1——控制反转(基础篇) Level 200 Spring.NET学习笔记2——环境搭建(基础篇) Level 200 Spring.NET学习笔记3——实现一个简易的IoC框架(练习篇) Level 100 Spring.NET学习笔记4——对象的创建(基础篇) Level 200 Spring.NET学习笔记5——容器中对象的作用域(基础篇) Level 200  Spri…
原文地址:http://www.cnblogs.com/frankofgdc/p/3600090.html Entity Framework学习笔记——错误汇总   之前的小项目做完了,到了总结经验和更新学习笔记的时间了.开始正题之前先啰嗦一下,对之前的学习目标进行一个调整:“根据代码生成表”与“生成数据库脚本和变更脚本”合并为“Code First模式日常使用篇”,增加现在这篇“错误汇总”,增加“Code First模式与其他模式混合使用与Fluent API篇”,“生成视图”因为这次在项目中…
主要目的是在网上记录一下学习笔记,如有不对,请指出 谢谢!! iis5.x: 存在问题,inet info收到动态请求后,aspnt_isapi.dll会被加载到inetinfo.exe(挂载w3svc服务)这个进程中,与工作进程通过管道进行通信,存在性能瓶颈 所有的asp.net应用运行在相同进程(aspnet_wp.exe)进程的不同进程域,并不能完全隔绝各个进程的相互影响 Iis6.0 将isapi动态链接库直接加载到工作进程,不在挂载w3svc,还是有元数据库(http请求解析出的数据去…
23 DesignPatterns学习笔记:C++语言实现 --- 1.2 AbstractFactory 2016-07-21 (www.cnblogs.com/icmzn) 模式理解  …
目录 前言 Spring.NET学习笔记——前言 第一阶段:控制反转与依赖注入IoC&DI Spring.NET学习笔记1——控制反转(基础篇) Level 200 Spring.NET学习笔记2——环境搭建(基础篇) Level 200 Spring.NET学习笔记3——实现一个简易的IoC框架(练习篇) Level 100 Spring.NET学习笔记4——对象的创建(基础篇) Level 200 Spring.NET学习笔记5——容器中对象的作用域(基础篇) Level 200 Sprin…
LACP学习笔记 来源: https://blog.csdn.net/zhengmx100/article/details/53893902 参考文档:download.h3c.com.cn/download.do?id=1420936 https://read01.com/5MK6eo.html 一.LACP 简介 1 .LACP 协议简介 基于IEEE802.3ad 标准的LACP(Link Aggregation Control Protocol,链路汇聚控制协议)是一种实现链路动态汇聚与…
目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 背景 自接触编程以来,一直听过这个名词Remoting,但是对他了解少之又少,近日有点时间,参考研究研究. 其相关概念本章不做详解,具体大家可以看下  http://baike.baidu.com/view/742675.htm?fr=aladdin  ,写的很详细. .Net Remoting概念 概念:一种分布式处理方式.从微软的产品角度来看,可…
WebSocket 学习笔记 来自我的博客 因为项目原因需要用到双工通信,所以比较详细的学习了一下浏览器端支持的 WebSocket. 并记录一些遇到的问题. 简介 WebSocket 一般是指浏览器提供的 API 接口,允许 Web 页面通过 WebSocket 协议与远程主机进行双向通信. 注:本接口不允许到底层网络的原始访问.举例说明,本接口不能被用于实现一个不通过自定义服务器代理发送消息的 IRC(网间实时聊天,Internet Relay Chat)客户端. 接口说明 文档 WebSo…
CUDA学习笔记 GPU架构 GPU围绕流式多处理器(SM)的可扩展阵列搭建,每个GPU有多个SM,每个SM支持数百个线程并发执行.目前Nvidia推出了6种GPU架构(按时间顺序,详见下图):Fermi.Kepler.Maxwell.Pascal.Volta和Turing,每种架构的SM构成不尽相同. 以Fermi架构为例,SM通常包含以下组成部分: 32个CUDA核心,每核心由一整数算术逻辑单元ALU和一浮点运算单元FPU组成 共享内存/L1Cache 寄存器 加载/存储单元 特殊功能单元S…