返回顶部
首页 > 资讯 > 精选 >如何实现WCF回调
  • 582
分享到

如何实现WCF回调

2023-06-17 20:06:56 582人浏览 安东尼
摘要

这篇文章主要为大家展示了“如何实现WCF回调”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现WCF回调”这篇文章吧。由于WCF回调方法并非运行在主线程中,如果WCF回调方法需要更新与异步调

这篇文章主要为大家展示了“如何实现WCF回调”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现WCF回调”这篇文章吧。

由于WCF回调方法并非运行在主线程中,如果WCF回调方法需要更新与异步调用结果相关的界面,例如本例中的lbMessage控件,则需要将回调的调用封送(Marshal)到当前主程序界面的同步上下文中。我们可以使用 SynchronizationContext以及它的SendOrPostCallback委托,对调用进行封送:

public ExplorerClientFORM()   {   InitializeComponent();   m_synchronizationContext = SynchronizationContext.Current;   }   private SynchronizationContext m_synchronizationContext;

则WCF回调方法修改为:

//callback method   void OnTransferCompleted(IAsyncResult result)   {   Stream stream = m_service.EndTransferDocument(result);   result.AsyncWaitHandle.Close();    SendOrPostCallback callback = delegate   {   lbMessage.Text = string.Format("The file {0} had been transfered sucessfully.",   m_doc.FileName);   };   m_synchronizationContext.Send(callback,null);   }

在调用异步方法时,由于对BeginTransferDocument()和EndTransferDocument()方法的调用可能会在不同的方法体中,因而我将服务代理对象定义为private字段。如果希望将服务对象定义为一个局部变量,可以在调用BeginTransferDocument() 方法时,将代理对象传递到方法的asyncState参数中,然后在调用EndTransferDocument()方法之前,通过 IAsyncResult获得准确的服务代理对象:

m_service.BeginTransferDocument(m_doc,OnTransferCompleted,m_service);

将m_service作为asyncState对象传入之后,在调用EndTransferDocument()方法之前,就可以根据它先获得服务代理对象:

IDocumentsExplorerService m_service = result.AsyncState as IDocumentsExplorerService;   Stream stream = m_service.EndTransferDocument(result);   //rest codes

以上是“如何实现WCF回调”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 如何实现WCF回调

本文链接: https://lsjlt.com/news/292651.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何实现WCF回调
    这篇文章主要为大家展示了“如何实现WCF回调”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现WCF回调”这篇文章吧。由于WCF回调方法并非运行在主线程中,如果WCF回调方法需要更新与异步调...
    99+
    2023-06-17
  • 如何实现WCF异步调用
    小编给大家分享一下如何实现WCF异步调用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!原来上网我下了很多WCF异步调用Demo。而我用的是VS2005,我在使用这...
    99+
    2023-06-17
  • WCF如何实现异步调用
    这篇文章主要为大家展示了“WCF如何实现异步调用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“WCF如何实现异步调用”这篇文章吧。异步调用是编程中不可缺少的,在工作中积累一点经验,现在我们里关注...
    99+
    2023-06-17
  • WCF回调返回值实例分析
    这篇文章主要介绍“WCF回调返回值实例分析”,在日常操作中,相信很多人在WCF回调返回值实例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”WCF回调返回值实例分析”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-17
  • WCF回调契约怎样定义
    这篇文章主要介绍“WCF回调契约怎样定义”,在日常操作中,相信很多人在WCF回调契约怎样定义问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”WCF回调契约怎样定义”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-06-17
  • jQuery中怎么实现调用WCF
    这期内容当中小编将会给大家带来有关jQuery中怎么实现调用WCF,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、我们首先建好一个项目,在VS2010中,建立好一个We...
    99+
    2024-04-02
  • python调用wcf服务 实现网
    实现目标: 1.创建一个WCF服务,用于读卡。 再创建一个winform客户端程序,作为WCF的宿主。 WCF服务以 IP+端口的形式对外提供服务。 2.python中安装suds,用于解析 WCF的服务地址。 winfo...
    99+
    2023-01-31
    python wcf
  • 如何利用WCF回调操作解决死锁问题
    这篇文章主要介绍“如何利用WCF回调操作解决死锁问题”,在日常操作中,相信很多人在如何利用WCF回调操作解决死锁问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何利用WCF回调操作解决死锁问题”的疑惑有所...
    99+
    2023-06-17
  • 如何实现JavaScript异步回调
    JavaScript是一门单线程语言,即每一次只能执行一个任务。这意味着在某些情况下,如果我们直接在JavaScript中调用一个可能会花费很长时间的函数,页面会因此被冻结并无法响应。为了解决这个问题,我们需要使用异步回调,让JavaScr...
    99+
    2023-05-14
  • Java如何实现回调函数
    小编给大家分享一下Java如何实现回调函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在WINDOWS中,程序员想让系统DLL调用自己编写的一个方法,于是利用D...
    99+
    2023-05-30
    java
  • WCF中怎么实现异步调用
    这篇文章将为大家详细讲解有关WCF中怎么实现异步调用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。随着时代的发展,异步调用在编程中是不可缺少的,这里就关于WCF异步调用简单的和大家分享一下吧...
    99+
    2023-06-17
  • WCF如何实现双向通信
    这篇文章主要介绍“WCF如何实现双向通信”,在日常操作中,相信很多人在WCF如何实现双向通信问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”WCF如何实现双向通信”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-06-30
  • 如何实现回调和spring的LambdaSafe类
    这篇文章主要介绍如何实现回调和spring的LambdaSafe类,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!   在阅读spring boot源码时发现了WebServerFactoryCus...
    99+
    2023-06-02
  • 在Java中如何实现回调过程
    这篇文章主要介绍了在Java中如何实现回调过程,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在Java中实现回调过程XML:namespace prefix = o ns =...
    99+
    2023-06-03
  • Android 调用WCF实例详解
    Android 调用WCF实例 1. 构建服务端程序 using System.ServiceModel; namespace yournamespace { [Ser...
    99+
    2022-06-06
    wcf Android
  • 如何利用WCF实现将服务器端的错误信息返回
    本篇内容主要讲解“如何利用WCF实现将服务器端的错误信息返回”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何利用WCF实现将服务器端的错误信息返回”吧!最近在园子里转看到有人对如题的实现有疑问...
    99+
    2023-06-17
  • 微信小程序如何实现getUserInfo回调
    这篇文章给大家分享的是有关微信小程序如何实现getUserInfo回调的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。微信小程序-getUserInfo回调的实例详解前言:这里就不...
    99+
    2024-04-02
  • 如何实现.html()函数的回调方法
    小编给大家分享一下如何实现.html()函数的回调方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 通过JQuery的。ht...
    99+
    2024-04-02
  • Java项目中是如何实现回调的
    这篇文章将为大家详细讲解有关Java项目中是如何实现回调的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。回调回调的概念:举个例子就是,我们想要问别人一道题,我们把题跟对方说了一下,对方说好,...
    99+
    2023-05-31
    java 回调 ava
  • 客户端如何执行WCF异步调用
    这篇文章主要为大家展示了“客户端如何执行WCF异步调用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“客户端如何执行WCF异步调用”这篇文章吧。客户端究竟应该如何执行WCF异步调用呢?如果采用编程...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作