问题标签 [wcf-callbacks]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1209 浏览

wcf - 抛出 CommunicationObjectAbortedException 后恢复回调通道

我们为扑克桌面游戏提供(多个)客户端-(一个)服务器架构。我们正在使用回调通道使用回调通知。

但有时由于互联网连接断开,该特定客户端与服务器断开连接,该特定客户端的 WCF 通道也进入故障状态,其位于服务器中的回调通道也故障。

设想 :

该客户端正在玩游戏,而互联网连接断开,该游戏停止,他的游戏窗口仍然打开,当他/她的互联网连接恢复时,该客户端从服务器中退出,但该玩家的游戏窗口仍然打开并且该玩家可以当他/她的 WCF 频道退出时,不要做任何事情。

我们希望在他/她从服务器中退出并抛出“ CommunicationObjectAbortedException ”异常时关闭该特定客户端的窗口。

我们不能使用以前的 WCF 通道的回调通道,因为它处于错误状态。所以我们尝试在服务器中创建新的回调通道,同时使用下面的代码:

操作上下文。当前.GetCallbackChannel();

但是这里 Current 显示“ NULL ”,因为该播放器的 WCF 通道已中止,因此它会引发“对象引用未设置为对象实例”的错误。

那么是否有任何解决方案可以使用已中止的 WCF 通道的回调通道或恢复该 WCF 通道而不重新初始化它们或使用新通道调用该客户端?

0 投票
1 回答
467 浏览

c# - WCF 回调 - 同步执行

我正在尝试实现 WCF 回调。当我在服务端调用回调方法时,它会异步执行。有没有办法在服务方法进入下一条语句之前等待回调方法完成执行,而不从回调返回值给服务?

这里的语句“Console.WriteLine("calling callback2");” 在 callback1 方法完成之前执行。而它一直等到 callback2 完成。

0 投票
1 回答
791 浏览

wcf - 使用 wsDualHttpbinding 进行大数据传输失败

我正在尝试使用回调同时向多个客户端发送大小超过 25 MB 的数据。我已经使用 wsdualhttp 绑定实现了该服务。当服务尝试同时将数据发送到 3 个以上的客户端时,它会引发“System.OutofMemory”和“无法分配内存”异常。我已经为 serviceThrottling、maxItemsInObjectGraph 以及 maxBufferPoolSize 设置了相关值。另外,我不能使用流媒体。有没有办法做到这一点?

// 服务器端

//客户端

0 投票
1 回答
484 浏览

c# - 通讯异常;应用商店 -> .NET 4.5 WCF 双工 TCP 服务;即时超时

我无法让 Windows 应用商店应用程序调用 WCF 服务。

该服务是使用 netTCP 绑定的双工服务。客户端(Windows 8.1 应用商店应用程序)第一次使用该服务时,会引发异常:

mscorlib.dll 中出现“System.ServiceModel.CommunicationException”类型的异常,但未在用户代码中处理

附加信息:套接字连接被中止。这可能是由于处理您的消息时出错或远程主机超出接收超时,或者是潜在的网络资源问题造成的。本地套接字超时为“00:09:59.9968452”。

这个超时时间几乎等于我的最大值,10 分钟。但是,异常会立即发生,并且服务函数中的断点永远不会被命中。两者似乎在某种程度上是在谈论,因为更改安全协议或端点地址会导致其他异常(如您所料的安全和连接)。我在服务中设置了一个断点,我试图调用的函数永远不会被命中。

我努力了:

  • 确保服务和客户端 NetTcpBinding 配置之间的功能等效
  • 提高超时,大小(每个 1-10 分钟,最大大小为 10000000)
  • 确保所有传递的对象类型都是具有默认构造函数的 DataContract
  • 祷告; 考虑燔祭

任何帮助将不胜感激。WCF 新手,无法找到针对 Windows 应用商店/netTCP/双工目标方案的帮助。

0 投票
2 回答
394 浏览

c# - Windows Phone 8 Callback WCF Service

I have a Windows Phone 8 Application and a WCF Service that implements Callback model. I'm having trouble configuring the service reference. I've tested the service using wsDualHttpBinding for a Windows Form Application Client instead the WP8 App, and it worked perfectly. However, this binding is not suitable for WP8 Apps and I have to change configuration. Can someone suggest me a simple working configuration for the service that works with my WP8 Application?

0 投票
1 回答
739 浏览

c# - WCF 回调不适用于多个客户端

我设法创建了一个带有回调的 WCF 服务。回调按预期工作,但仅适用于一个客户端。如果我启动另一个客户端,第一个客户端停止接收回调,但第二个客户端接收它们两次,依此类推。我已经尝试InstanceContextMode过 Single、PerCall 和 PerSession 模式,但它会导致同样的问题。

你知道如何解决这个问题吗?

这是服务类:

这是回调类:

0 投票
0 回答
345 浏览

c# - 从 Android 访问 WCF 回调服务(WCF 和 Android 之间的双向通道)

我通过使我的服务 RESTFUL 并使用 basicHttpBinding 来使用 Android 的 WCF 服务。我的问题是:android 客户端(或任何非 microsoft 客户端)是否可以调用实现回调的 WCF 服务?如果没有,任何可以像 WCF 和 Android 之间的双向通道一样的想法?

0 投票
1 回答
86 浏览

c# - 从非 Microsoft 客户端访问 WCF 服务回调

WCF 应该是可互操作的,可以从微软和非微软客户端访问 WCF 服务,但只有微软客户端可以访问 WCF 回调服务。问题是:非微软客户端是否可以访问 WCF 回调服务?有没有办法在微软服务和非微软客户端之间建立一个活跃的双向通道?

0 投票
2 回答
1366 浏览

c# - 在 WCF 中调用回调方法之前检查客户端状态

我有一个使用 netTCPBinding 在双工通道上工作的 WCF 服务和 WCF 客户端。

我将连接的用户存储在字典中 ( Dictionary<int userID,CallbackInstance instance>)

当用户定期断开连接时,请从服务中调用断开连接,然后我将用户从连接的用户列表中删除。它工作正常。

但是当客户端 pc 不定期断开连接时,客户端无法调用 Disconnect 方法,所以客户端仍然在连接的用户列表中,这就是问题所在。因为当我的 WCF 服务器检查服务器是否有在线用户回调时,服务器尝试调用客户端的回调方法,但客户端不可用,我的 WCF 服务器应用程序崩溃。

是否可以在调用回调实例之前检查客户端状态?

0 投票
0 回答
104 浏览

c# - 带有回调的 WCF 持久服务,无法获取上下文

我创建了一个带有回调的服务。这工作正常。现在我想让这项服务持久。我的问题是获取上下文并稍后再次加载。我这样称呼服务:

我现在必须在哪里保存上下文,我该怎么做?我试图用客户群做一些事情......但我认为这是另一种解决方案。再次访问同一服务实例的正确方法是什么?

感谢您的帮助,马克斯