내 응용 프로그램에서 인터넷 연결 및 내 사이트 액세스를 확인합니다. 나는 다른 반에서 결과를 얻을 수 없다. localSettings.Values를 통한 솔루션이 있지만 원하는 것은 아닙니다. 도와주세요. 고마워요다른 등급의 인터넷 수표 결과를 얻는 방법?
public class NetworkUtils{
public enum ConnType
{
CONN_MOBILE,
CONN_WIFI,
CONN_WAN,
CONN_NO,
CONN_MY
}
public ConnType GetConnectionGeneration()
{
string connectionProfileInfo = string.Empty;
try
{
ConnectionProfile InternetConnectionProfile = NetworkInformation.GetInternetConnectionProfile();
if (InternetConnectionProfile == null)
{
NotifyUser("Not connected to Internet\n");
return (ConnType.CONN_NO);
}
else
{
if (InternetConnectionProfile.IsWlanConnectionProfile)
{
HttpClient httpClient = new HttpClient();
httpClient.Timeout = new TimeSpan(0, 0, 0, 0, 300);
try
{
httpClient.GetAsync(new Uri("http://www.myexample.com")).Wait();
NotifyUser("MY SITE connected\n");
return (ConnType.CONN_MY);
}
catch (Exception ex)
{
NotifyUser("Unexpected exception occurred: " + ex.ToString());
}
return (ConnType.CONN_WIFI);
}
else if (InternetConnectionProfile.IsWwanConnectionProfile)
{
WwanDataClass connectionClass = InternetConnectionProfile.WwanConnectionProfileDetails.GetCurrentDataClass();
switch (connectionClass)
{
//2G-equivalent
case WwanDataClass.Edge:
case WwanDataClass.Gprs:
//3G-equivalent
case WwanDataClass.Cdma1xEvdo:
case WwanDataClass.Cdma1xEvdoRevA:
case WwanDataClass.Cdma1xEvdoRevB:
case WwanDataClass.Cdma1xEvdv:
case WwanDataClass.Cdma1xRtt:
case WwanDataClass.Cdma3xRtt:
case WwanDataClass.CdmaUmb:
case WwanDataClass.Umts:
case WwanDataClass.Hsdpa:
case WwanDataClass.Hsupa:
//4G-equivalent
case WwanDataClass.LteAdvanced:
return (ConnType.CONN_MOBILE);
//not connected
case WwanDataClass.None:
return (ConnType.CONN_NO);
//unknown
case WwanDataClass.Custom:
default:
HttpClient httpClient = new HttpClient();
httpClient.Timeout = new TimeSpan(0, 0, 0, 0, 300);
try
{
httpClient.GetAsync(new Uri("http://www.myexample.com")).Wait();
return (ConnType.CONN_MY);
}
catch (Exception ex)
{
NotifyUser("Unexpected exception occurred: " + ex.ToString());
}
return (ConnType.CONN_WAN);
}
}
return (ConnType.CONN_MOBILE);
}
}
catch (Exception ex)
{
NotifyUser("Unexpected exception occurred: " + ex.ToString());
return (ConnType.CONN_NO);
}
}
}
내가 잘못한 것을하면. 좋은 아이디어가 있다면, 나는 감사 할 것입니다. 나는 그렇게 테스트했지만 아무 일도 일어나지 않는다.
public sealed partial class TestPage : Page
{
public TestPage()
{
InitializeComponent();
if (NetworkUtils.ConnType.CONN_MY.ToString().Equals("CONN_MY"){
TextBlock.Text = "GOOD Connection";
} else if (NetworkUtils.ConnType.CONN_WIFI.ToString().Equals("CONN_MY"){
TextBlock.Text = "WIFI Connection";
}
...
}
}