【发布时间】:2012-01-25 11:45:30
【问题描述】:
我已经在这个问题上工作了几天,似乎找不到解决方案:(
我有一个对 WCF 服务的异步调用,它有时会工作,而在其他情况下绝对不会做任何事情 - 没有调用,没有错误,什么都没有。它会在我的调用方法(主线程)执行后停止。 断点已添加到服务方法和自动生成的代理类中。如果我正在调试失败的调用,这些断点将永远不会被命中。其他时候(当它碰巧起作用时)所有断点都会被击中。
我已完全删除该服务并再次添加它,但仍然没有运气。 我什至添加了一个新的服务方法和请求消息对象,希望它是原来的一个奇怪的问题,但是我也遇到了新插入的方法同样的问题。
请注意 - 当我将应用程序发布到虚拟机时,此问题会更频繁地发生。它在我的本地机器上并没有发生太多,但它仍然会发生。
这是我的代码示例:-
这是对服务的异步调用;
ValidateUpdatesMessageRequest request = new ValidateUpdatesMessageRequest();
_serviceClient.ProcessUpdatesAsync(Request)
服务方法是这样的;
public ValidateUpdatesMessageResponse ProcessUpdates(ValidateUpdatesMessageRequest request){
//method body
}
我还有一个服务接口,看起来像这样;
[OperationContract]
ValidateUpdatesMessageResponse ProcessUpdates(ValidateUpdatesMessageRequest request);
我会感谢任何可能有助于引导我找到解决方案的反馈。
如果您需要任何进一步的信息,请告诉我。
非常感谢!
【问题讨论】:
-
嘿@Dave,我们在 SL 和 WCF 服务中遇到了类似的情况。我不知道确切原因,但是对服务进行了大量的顺序调用,尤其是当服务器端的操作是重,造成了这种行为。。你的情况类似吗?
-
你能发布你的服务的代码和配置吗?
-
嗨@Zortkun,感谢您的回复。实际上似乎没有与此问题相关的任何模式。对 Web 服务的调用是处理已经/需要更新的记录,所以我们可能一次只处理一条记录,它会失败,有时我们可以处理 20 条记录,它会工作,反之亦然!你采取了哪些措施来解决这个问题?谢谢。
-
@Dave 我想我们在阅读完这篇文章后得出了一个结论 (forums.silverlight.net/t/174322.aspx/1/10) ... 然后我们在彼此完成后开始打电话.. :/ 但我想你不会想要那个呵呵。
-
嗨@Rajesh,来自客户端的调用如下所示:- _serviceClient.ProcessUpdatesAsync(request) 服务中的方法如下所示:- public ValidateUpdatesMessageResponse ProcessUpdates(ValidateUpdatesMessageRequest request) { //method我还有一个服务接口,如下所示:- [OperationContract] ValidateUpdatesMessageResponse ProcessUpdates(ValidateUpdatesMessageRequest request);
标签: .net wcf silverlight web-services