V 维斯瓦鲁潘 新成员 已加入 2015年10月13日 留言内容 3 编程经验 5-10 2015年10月13日 #1 有人可以帮助还是共享一个简单的代码来显示,当客户端调用服务方法时,如何在.NET C#WCF服务端更新GUI。 看起来当使用myServiceHost.Open()打开服务时,它将创建自己的线程,而GUI在自己的线程上运行。现在,当客户端应用程序调用此方法时,该服务将无法进入GUI控件。 提前谢谢你的帮助。
有人可以帮助还是共享一个简单的代码来显示,当客户端调用服务方法时,如何在.NET C#WCF服务端更新GUI。 看起来当使用myServiceHost.Open()打开服务时,它将创建自己的线程,而GUI在自己的线程上运行。现在,当客户端应用程序调用此方法时,该服务将无法进入GUI控件。 提前谢谢你的帮助。
J 金西尼 C#论坛主持人 工作人员 已加入 2011年4月23日 留言内容 3,501 地点 悉尼,澳大利亚 编程经验 10+ 2015年10月13日 #2 您的问题似乎没有道理。服务甚至如何知道GUI存在?该服务仅接收请求并将数据发送回去。 GUI应用程序可以根据这些请求的结果自行更新。 投票 0 下注
V 维斯瓦鲁潘 新成员 已加入 2015年10月13日 留言内容 3 编程经验 5-10 2015年10月15日 #3 抱歉,我在这里没有完整介绍问题。此WCF服务未安装为Windows服务。它具有GUI,通过它可以在应用程序中运行WCF服务。现在,WCF服务在其自己的线程中运行,而GUI在主线程中运行。因此,当调用来自客户端时,您将无法从该方法访问GUI控件。您如何在GUI控件上的调用中显示数据? 投票 0 下注
抱歉,我在这里没有完整介绍问题。此WCF服务未安装为Windows服务。它具有GUI,通过它可以在应用程序中运行WCF服务。现在,WCF服务在其自己的线程中运行,而GUI在主线程中运行。因此,当调用来自客户端时,您将无法从该方法访问GUI控件。您如何在GUI控件上的调用中显示数据?
约翰·H C#论坛主持人 工作人员 已加入 2011年4月23日 留言内容 1,028 地点 挪威 编程经验 10+ 2015年10月15日 #4 当您使用ServiceHost自托管服务时,可以使用服务的单例实例对此进行初始化,这将使您可以侦听该类中的事件。 当您的服务收到请求时,服务类方法可以引发事件并传递接收到的数据,然后GUI可以通过其事件处理程序接收此数据。 GUI事件处理程序将在辅助线程上下文中调用,要至少在Windows Forms环境中使用GUI控件,必须使用Control.Invoke将执行传递给GUI线程。 一种不同的方法可能是使用WCF消息检查器。 投票 0 下注
当您使用ServiceHost自托管服务时,可以使用服务的单例实例对此进行初始化,这将使您可以侦听该类中的事件。 当您的服务收到请求时,服务类方法可以引发事件并传递接收到的数据,然后GUI可以通过其事件处理程序接收此数据。 GUI事件处理程序将在辅助线程上下文中调用,要至少在Windows Forms环境中使用GUI控件,必须使用Control.Invoke将执行传递给GUI线程。 一种不同的方法可能是使用WCF消息检查器。
约翰·H C#论坛主持人 工作人员 已加入 2011年4月23日 留言内容 1,028 地点 挪威 编程经验 10+ 2015年10月16日 #6 也许您正在寻找这样的东西? 处理和引发事件 投票 0 下注