使用WinRT在C#中Ping网站

时间:2012-06-20 19:32:43

标签: c# windows-runtime

我正在开发适用于Windows 8的应用程序。我需要检测用户是否已连接到互联网。我无法使用IsNetworkAvailable,因为这只会通知是否有可用的接入点。但是,它不会告诉您是否存在与互联网的实际有效连接。为了确定这一点,我想当我想检查用户是否连接到互联网时,我会尝试ping谷歌。

我的问题是,如何在WinRT中进行阻止调用?基本上我想说:

if (Utility.CanPingGoogle()) {
  // I know I'm connected to the internet, do stuff
}

但是,所有调用都显示为异步。我想创建一个阻塞调用,这样我就可以在实用程序类中抛出功能并根据需要使用它。有没有办法做到这一点?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以对异步函数进行阻止调用。

  

数据数据= Model.SomeAsyncFunction()。GetResults();

或使用Result属性。

  

数据数据= Model.SomeAsyncFunction()。结果;

取决于您正在使用的功能。

看看是否有效,

- 尼马