假设手机找到开放的Wi-Fi网络并连接到它.但是Wi-Fi网络是"非活动的",即当您打开浏览器时,您会看到凭据提示.我的手机上有很多应用程序(例如网络浏览器),在这种情况下无效.我想使用移动网络发送数据,但系统仍尝试使用Wi-Fi.
NetworkInfo.isAvailable()和NetworkInfo.isConnected()仍返回true所描述的Wi-Fi网络.有解决方案吗
我有一个WPF中的桌面应用程序和.Net 4.0客户端框架下开发的C#,它必须根据互联网是否可用而显示或隐藏一些数据.这意味着我必须能够尽快检测互联网是否断开或连接以便做出反应.(示例可以断开与无线网络的连接或拔掉网络电缆)
当我研究了一下时,我发现在每次连接发生变化时都会触发一个NetworkChange名为NetworkAvailabilityChangedfires 的类(链接到docs).
我正在使用Windows 8计算机进行开发,当我在那里尝试时,事件没有被触发但是当我在Windows 7上运行应用程序时,事件被触发.正如在文档中所说的那样,框架4.0对该事件的兼容性是在Windows 7之前,但在框架4.5兼容性的文档中查看相同的事件也说明了Windows 8.
问题是即使我将项目的目标框架切换到4.5(这不是主意),事件也不会在Windows 8上触发.
是否存在我没有意识到的任何不兼容问题?当连接发生变化时,是否有更好的方法可以获得通知?
如果可能的话,我需要一个适用于Windows Vista,7和8的Framework 4.0客户端的解决方案
我为公司开发了一个软件.出于某种许可目的,我使用远程数据库来允许/禁止使用该软件.每次用户登录软件时都会应用此任务.如果互联网连接不存在或者对远程数据库的查询失败,则用户收到错误并且他无法登录软件并显示远程数据库的http地址(我不希望他看到,如果他仔细阅读错误)
我想知道的是执行相同过程的任何方式,但如果远程数据库查询失败或Internet连接不可用,它应该暂时绕过检查,并在下次登录尝试时,遵循相同的过程.所以我的客户不应该知道这个许可的东西.
如何在创建对远程数据库的查询之前检查Internet连接(LAN,WiFi,拨号或用户正在使用的任何内容).
建议的方法:
Ping我的远程数据库服务器IP.
关于结果我从米歇尔的问题中获得的结果是不稳定的解决方案.
在C#中,if语句我正在捕获length属性并希望为此应用条件语句.但我相信我的条件声明不起作用.我应该如何为给定的代码应用条件语句.长度"66"表示互联网连接已关闭,否则将其启动.
WebClient client = new WebClient();
string value;
try
{
value = client.DownloadString("http://google.com");
}
catch(WebException ex)
{
value = (ex. Message);
}
if (value = "66")
{
Console.WriteLine("Internet connection is down");
}
else
{
Console.WriteLine("Internet connection is up");
}
Console.WriteLine(value.Length);
Console.WriteLine("Press any key to continue");
Console.ReadKey(true);
Run Code Online (Sandbox Code Playgroud)