Я пытаюсь выполнить синхронизацию со своим пользовательским устройством через соединение Wi-Fi. Все работает нормально, когда мои мобильные данные отключены, но когда они включены, они не будут работать (поскольку мое пользовательское устройство не имеет подключения к Интернету).
Вот где возникает проблема:
stateSuccess = true;
tcpclnt = new TcpClient();
IAsyncResult ar = tcpclnt.BeginConnect(ip, port, new AsyncCallback(connectCallback), stateSuccess);
int timeout = 3000;
stateSuccess = ar.AsyncWaitHandle.WaitOne(timeout, false);
когда у меня включены мобильные данные stateSuccess = false
, но когда мобильные данные отключены stateSuccess = true
. Я всегда подключен через Wi-Fi к своему пользовательскому устройству.
Мой connectCallback:
private void connectCallback(IAsyncResult ar)
{
var stateSuccess = (Boolean)ar.AsyncState;
try
{
tcpclnt.EndConnect(ar);
}
catch (Exception exc)
{
//handle
}
try
{
if (tcpclnt != null && tcpclnt.Connected && stateSuccess)
return;
tcpclnt.Close();
}
catch (Exception exc)
{
if (tcpclnt != null)
tcpclnt.Close();
}
}
Я думаю, что проблема где-то в том, что он выбрал неправильную сеть. Как я могу заставить его использовать сеть Wi-Fi, даже если у Wi-Fi нет подключения к Интернету?