zoukankan      html  css  js  c++  java
  • Open Interface Service WCF三种通信模式

    WCF三种通信模式

    一.请求响应模式:

    概念:客户端发送请求,一直等待服务端响应,在此期间处于等待(假死)状态;直到服务器响应,才能继续执行其他的操作;

    即使返回值是void 也属于请求与答复模式。

    例:

    [OperationContract]

    string ShowName(string name);

    二.单项模式:

    概念:客户端发送请求,无论服务器端是否有响应,都会继续执行其他操作;

    使用 IsOneWay=true 标记的操作不得声明输出参数、引用参数或返回值

    例:

     [OperationContract(IsOneWay = true)]

     void ShowName(string name);

    三.双工模式:

    概念:双工模式建立在上面两种模式的基础之上,实现客户端与服务端相互的调用。相互调用:以往我们只是在客户端调用服务端,然后服务端有返回值返回客户端,而相互调用不光是客户端调用服务端,而且服务端也可以调用客户端的方法。

    双工模式建立在以上两种模式之上,所以不冲突;

    例:

    [ServiceContract(CallbackContract = typeof(IUserCallback))]
        public interface IUser
        {
            [OperationContract]
            string ShowName(string name);
        }
       //回调的接口
        public interface IUserCallback
        {
            [OperationContract(IsOneWay = true)]
            void PrintSomething(string str);
        }

    扩展知识:

    回调绑定:

    1.WSDualHttpBinding;

    2.NetTcpBinding;

    3.NetNamedPipeBinding;

    4.NetPeerTcpBinding;

    例:

    <endpoint address=""  binding="wsDualHttpBinding" contract="WCFService_DualPlex.IUser"></endpoint>

  • 相关阅读:
    UEditor用法
    String,StringBuffer与StringBuilder差异??
    TsFltMgr.sys其原因是,该系统蓝屏QQ计算机管理器!
    Linux编程实现守护进程
    开机黑屏 只显示鼠标 电脑黑屏 有只老鼠 举 [我们已经成功地解决了]
    页面背景图像的代码
    动态规划01背包问题
    关键部分CCriticalSection使用
    编程:获取股票实时行情数据大全
    iphone开发教程下载
  • 原文地址:https://www.cnblogs.com/zlp520/p/7203795.html
Copyright © 2011-2022 走看看