我正在使用WCF。双面WCF服务通信
我有两个应用程序:“主”和“工人”。
有时应用程序“Main”正在为“Worker”提供任务。 “工作人员”正在进行工作,工作完成后将结果显示为“主要”。
该通讯应该如何完成?
我需要从Worker的Main和Main.AddResult(Result)中调用Worker.AddTask(Task)。 有没有比建立两个服务更好的方法?
我正在使用WCF。双面WCF服务通信
我有两个应用程序:“主”和“工人”。
有时应用程序“Main”正在为“Worker”提供任务。 “工作人员”正在进行工作,工作完成后将结果显示为“主要”。
该通讯应该如何完成?
我需要从Worker的Main和Main.AddResult(Result)中调用Worker.AddTask(Task)。 有没有比建立两个服务更好的方法?
这听起来很经典的WCF的callbacks-它允许服务器之间的双向异步通信和客户端(在你的情况下,服务器将是'工作人员','主'应用程序将调用其方法以便开始处理。工作完成后,它将调用main中的回调函数。)
LMGTFY: )
假设两个应用程序都是单独的进程和通信的服务...
我想你可以使用netTcpBinding和Callback contracts
对“Worker”的每个调用是否最终都以“Main”的结果结束?如果是这样的话,你可能只想让“Main”异步调用“Worker”,“Main”可以等待结果返回。参见:http://msdn.microsoft.com/en-us/library/ms730059.aspx
感谢和愚蠢的问题抱歉。我没有考虑它作为回调(我从来没有通过网络回调工作) – Ari
我既不:)。并不认为你的问题是愚蠢的;直到我自己问同样的问题,我从来没有听说过这个功能:) –