2
我试图模拟ping操作来确定是否可以访问远程主机。我找不到任何确凿的代码示例为WP7做这个,所以我想我会尝试以下。 我在寻找的是确认这是否是适当的方式来做到这一点。模拟WP7中的PING操作
Socket socket =
new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
SocketAsyncEventArgs args = new SocketAsyncEventArgs();
args.RemoteEndPoint = new DnsEndPoint (someIP, 80); // use HTTP port 80
args.Completed += (obj, eva) =>
{
if (eva.SocketError != SocketError.Success)
{
//raise an error or set a view model property indicating error
}
socket.Close();
};
socket.ConnectAsync(args);
我不知道如何实现Ping,但套接字现在支持芒果。 – 2012-01-06 07:41:38
@Jon:我更新了代码以专门连接到端口80,并将SocketError属性设置为“成功”。你是否认为使用套接字使这个检查比使用WebClient或HttpWebRequest更有效率? – 2012-01-06 07:44:01