Я хотел бы создать клиентский сокет UWP. Я использую StreamSocket, но получаю сообщение об ошибке при попытке подключить его.
Другими словами, когда код достигает await ConnectSocket(IP, PORT)
, выдается следующее исключение:
Я не понимаю следующее исключение:
Задача была отменена.
в System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (Задача
задача)
в System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (Задача
задача)
в System.Runtime.CompilerServices.TaskAwaiter.GetResult ()
at BluetoothLEExplorer.Models.SocketWriter.d__7.MoveNext ()
System.Collections.ListDictionaryInternal
Вот мой код класса сокетов:
public class SocketWriter
{
private StreamSocket socket = null;
public StreamSocket Socket
{
get
{
return this.socket;
}
}
private String errorMessage;
public async Task<Boolean> ConnectSocket(string host, string port)
{
try
{
socket = new StreamSocket();
socket.Control.KeepAlive = true;
HostName hostName = new HostName(host);
await socket.ConnectAsync(hostName, port);
return true;
}
catch (Exception ex)
{
return false;
}
}
public async Task<Boolean> Send(string message)
{
try
{
Stream streamOut = socket.OutputStream.AsStreamForWrite();
StreamWriter writer = new StreamWriter(streamOut);
await writer.WriteLineAsync(message);
await writer.FlushAsync();
return true;
}
catch (Exception ex)
{
StopSocket();
return false;
}
}
public Boolean StopSocket()
{
try
{
socket.Dispose();
socket = null;
return true;
}
catch (Exception ex)
{
return false;
}
}
}
Почему у меня есть это исключение и как его можно исправить?