在Windows Phone异步服务中捕获服务器端异常

时间:2012-09-17 15:22:31

标签: c# wcf web-services windows-phone-7.1

如果复制粘贴上有任何错误

,此代码正在工作
public class SyncTicketsDown
{
    SR.WsTicketSyncSoapClient client = Tools.ServiceManager.GetConnection();

    public void ResolveTicket(int TicketID)
    {
        client.ResolveTicketAsync(TicketID)
    }

    void client_ResolveCompleted(object sender, SR.ResolveTicketCompletedEventArgs e)
    {
         if (e.Result > 0)
         {
             Tools.IOSettings.DeleteTicket(e.Result);
         }
    }  
} 

如果票证ID在服务器端不是有效的ID,服务器将抛出异常,我该如何捕获此异常?我们正在谈论我在这个应用程序上运行大约40种不同的服务,并且Visual Studio创建的服务引用有5000行(Reference.cs),当抛出异常时,调试器将在对此类服务的引用上爆炸不在我的班上。

当你试图到达一个到目前为止服务器抛出异常的地方时,我也遇到了与bing路由服务相同的问题,该异常表示“To far to calculated”这个异常反映在Reference.cs类中。

必须有一种标准的方法来捕捉这些例外。

1 个答案:

答案 0 :(得分:1)

我实际上发现,即使调试器在Reference.cs上爆炸,它也会将错误扩展到Complete事件,我可以在那里管理错误,因为调试器停在reference.cs上而导致垃圾混乱

所有服务器端错误都将反映在complete事件

这不是同一个问题,而是类似的答案

Windows phone 7, silverlight - How to catch EndpointNotFoundException when calling async web service?