0

В настоящее время я создаю приложение WP7, которое использует службы данных WCF, размещенные на веб-сервере. То, что я хотел бы иметь, этоУслуги WP7 и WCF: быстрое переключение приложений

cathayService.ServiceException += (sender, e) => 
    { 
     Debug.WriteLine(e.Exception.ToString()); 
     MessageBox.Show(e.Exception.ToString(), "Service Error", MessageBoxButton.OK); 
    }; 

Исключение службы вызывает триггер, если у меня отсутствует подключение к Интернету. Это также срабатывает, когда я сталкиваюсь с быстрым переключением приложений. Как я мог бы отличить источник ServiceException?

Надеюсь, что кто-то может дать мне идею ... Большое спасибо! :)

ответ

0

[Неясно, если вы получаете экземпляр ServiceException, или если вы имеете в виду события ServiceException в некоторых вышеперечисленных местах]

Проверьте исключение вы получите - если он классифицирован как ThreadAbortException, это означает, что вам выключаются. Если вы действительно получаете бросок ServiceException, проверьте его внутреннее исключение и посмотрите, есть ли этот парень в ThreadAbortException.

Мое предложение состоит в том, что вы не перехватываете это событие, а вместо этого используете фактические события обратного вызова на клиенте WCF, чтобы проверить свойство .Error возвращаемых EventArgs.

+0

В конце дня я действительно не решал свою проблему, но вместо этого исправил свои ViewModels, чтобы я никогда не столкнулся с этой проблемой. Я считаю, что ваше предложение может работать, однако;) – matt