Internet 可用性检查 - 导航到页面 - Windows Phone 8.1 - C#

Internet availability check - Navigate to Page - Windows Phone 8.1 - C#

我是新手!当我从服务器检索数据时,我想在启动我的应用程序时检查互联网可用性。如果互联网可用,用户可以在没有任何通知的情况下继续使用应用程序。如果没有互联网,那么我必须从我的应用程序导航到特定页面。

我在堆栈溢出上发现了一些页面,但是对于 windows 8 或 windows phone 8 不是 WP8.1 的旧页面。

我正在使用以下命名空间...

System.Net.NetworkInformation、Windows.System、Windows.Networking.Connectivity 和 System.Net;

尝试使用 Bool、IPHostEntry、GetIsNetworkAvailable,但都失败了。

有人可以 post 示例代码吗?它会出现在 app.xaml.cs 和个人页面的 cs 中吗?

下图是我的尝试。

首先,看您提供的图片,您似乎正在尝试将代码编写到 class 级别。据我所知,你不能真正将 if-else 逻辑等写到 class 级别,这应该是方法级别的代码。

也就是说,要回答实际问题,我认为研究 NetworkAvailabilityChanged event 是有意义的。

Tutorial 在 MSDN 上似乎很全面。

因为您想在您的应用程序启动时检查互联网可用性,您应该将您的代码逻辑移动到方法 OnLaunched 内部:

protected override void OnLaunched(LaunchActivatedEventArgs e)
{
   //paste your code here to check network
}

您可以通过单击方法左侧的 加号 按钮来打开括号,然后将您的代码粘贴到其中。

我在这里找到了一些帮助 Check Internet Connection and Navigate to Pages 并设法完成了我想做的事情。

我在 "protected override void OnNavigatedTo(NavigationEventArgs e)" 下的 MainPage.xaml.cs 中编写我的代码。我打算在每个页面上执行此代码,而不是注册网络更改通知。由于此代码使用 await 函数,因此我将 Async 添加到 OnNavigatedTo 事件。下面是代码。