C# 如何在Windows Phone 8.1中ping IP

C# 如何在Windows Phone 8.1中ping IP,c#,windows-phone-8.1,ping,C#,Windows Phone 8.1,Ping,我正在编写需要与服务器保持连接的Windows Phone应用程序(确切地说是Windows服务应用程序)。我想ping服务器,比如说,每1秒捕捉一次断开的连接,等等 此外,我必须指出,我正在使用Windows Phone SilverLight 8.1项目(我无法在正常的Windows Phone 8.1中执行此操作,因为Socket类未包含在内) 到目前为止,我找到的最快的方法是使用System.Net.NetworkInformation中的Ping类。问题是VisualStudio说没有

我正在编写需要与服务器保持连接的
Windows Phone
应用程序(确切地说是Windows服务应用程序)。我想ping服务器,比如说,每1秒捕捉一次断开的连接,等等

此外,我必须指出,我正在使用
Windows Phone SilverLight 8.1
项目(我无法在正常的
Windows Phone 8.1
中执行此操作,因为
Socket
类未包含在内)

到目前为止,我找到的最快的方法是使用
System.Net.NetworkInformation
中的
Ping
类。问题是VisualStudio说没有
Ping

好的,MSDN文档没有提到支持的平台是Windows Phone SilverLight 8.1。但当我创建test
windowsphone8.1
projectvisual时,我再次表示,
Ping
不存在

以下是受支持的平台:

平台:
Windows Phone 8.1、Windows Phone 8、Windows 8.1、Windows Server 2012 R2、Windows 8、Windows Server 2012、Windows 7、Windows Vista SP2、Windows Server 2008(不支持服务器核心角色)、Windows Server 2008 R2(SP1或更高版本支持服务器核心角色;不支持安腾)

为什么我不能使用Ping类?


如果这不是我的错(如缺少程序集等),我如何以不同的方式“ping”我的服务器应用程序?

您正在寻找错误的System.Net.Information实现。您链接的是桌面.NET版本。对于右图,您需要查看Silverlight.NET类库:

Ping在Silverlight不可用,但您可以使用Windows.Network.Sockets实现自己的Ping命令:


我怀疑ping是保持连接的正确方式。为什么你在下一次尝试沟通时没有意识到断开连接?我不确定这是不是正确的方式。我希望通过UDP流式传输视频,并希望确保与ping的连接状态(例如,在重新连接后恢复发送/接收UDP包)。创建UDP连接是否不会为您提供连接状态?我认为波兰语版本中提供的信息不正确。使用相同的链接,我刚刚将Pl更改为en US,手机和windows 8版本也不见了:)我从未想过。。。真奇怪。我甚至看不到英文版的
支持的平台
部分。我想我得自己写了。谢谢你的好建议:)这都是真的。我已经知道,
Silverlight
没有这样的功能(顺便说一句,感谢上面的链接,我一定会尝试写这个),正如我在第一篇文章中提到的。现在我很好奇为什么它不能在Windows Phone 8.1中工作?文档说明它是受支持的。根据@Muhammad Saifullah post
Windows Phone 8.1
的说法,它也不受支持。我将不得不做我自己的平课。再次感谢链接:)