Fis*_*ake 6 c# silverlight web-services windows-phone-7
我正在从Silverlight Windows phone 7应用程序中调用Web服务,如果Web服务可用,它可以正常工作.如果Web服务不可用,则会捕获未处理的异常,但我似乎无法自己捕获它.我的尝试如下:
//Get list of providers from Webservice
RSAServiceClient proxy = new RSAServiceClient();
proxy.GetSuppliersCompleted += new System.EventHandler<GetSuppliersCompletedEventArgs>(ProxyGetSuppliersCompleted);
try
{
proxy.GetSuppliersAsync();
}
catch (EndpointNotFoundException)
{
//TODO: Handle webserice not being available
}
catch (Exception)
{
throw;
}
Run Code Online (Sandbox Code Playgroud)
但是这并没有捕获异常,显然GetSuppliersCompleted永远不会被调用,所以我无法在那里捕获它.
然后我想我可以通过检查连接状态(proxy.State)来检测它,但是尽管Web服务没有运行,但是返回CommunicationState.Opened.
我有什么想法可以解决这个问题吗?
抱歉,如果我错过了一些东西,但我已经搜索过但没有找到解决方案.
你应该把你的捕获物放在你的ProxyGetSuppliersCompleted
方法中.
尝试访问结果将引发您期望的错误.
或者,ProxyGetSuppliersCompleted
您可以测试Error
将包含异常的EventArgs 的属性.
归档时间: |
|
查看次数: |
2390 次 |
最近记录: |