Я работаю над простым приложением WP7, которое отображает прибытия BART из их XML-канала в реальном времени. У меня эта часть работает, но мне нужно решить эту проблему, чтобы она была сертифицирована для Marketplace.
Когда я отлаживаю приложение на своем устройстве WP7 в режиме полета, когда я пытаюсь получить информацию XML, приложение вылетает.
Метод, который я нашел в сети для проверки сетевого подключения, похоже, помогает:
private bool InternetIsAvailable()
{
var available = !NetworkInterface.GetIsNetworkAvailable();
#if DEBUG
available = false;
#endif
if (!available)
{
MessageBox.Show("No internet connection is available. Try again later.");
return false;
}
return true;
}
Код называется так (в том же коде, который вызывает метод, извлекающий XML, но прямо перед ним):
bool foo;
foo=InternetIsAvailable();
if (foo == false)
{
NavigationService.Navigate(new Uri("/map.xaml", UriKind.Relative));
}
Здесь я думаю, что если нет доступа к сети, приложение вернется на предыдущую страницу до тех пор, пока не появится доступ к сети (а не crash-, а map.xaml - предыдущая страница). Тем не менее, приложение по-прежнему аварийно завершает работу после обнаружения отсутствия доступа к сети. Что я здесь не так делаю? Я также немного изучаю C # в то же время, так что я пропускаю какую-то обработку исключений?
Спасибо