Проблема с UdpClient (разрешается только одно использование адреса сокета) - C#
Формулировка задачи:
Есть приложение, которое отсылает содержимое файла на указанный порт:
Есть приложение, которое получает содержимое:
После нажатия клавиши "Ожидать данные" на втором приложении, я не могу отправить на него данные при помощи первого, так как ловлю ексепшн с сообщением, что адрес сокета уже занят. Как быть?
using (UdpClient server = new UdpClient(port))
{
string file;
Byte[] bytes;
server.Connect(ip, port);
TextReader reader = new StreamReader(fileName);
file = reader.ReadToEnd();
reader.Close();
// Посылаем
UTF8Encoding encoder = new UTF8Encoding();
bytes = encoder.GetBytes(file);
server.Send(bytes, bytes.Length);
}using (UdpClient client = new UdpClient(port))
{
bytes = client.Receive(ref remoteIpEndPoint);
file = ecoder.GetString(bytes); // file - string
}Решение задачи: «Проблема с UdpClient (разрешается только одно использование адреса сокета)»
textual
Листинг программы
using (UdpClient server = new UdpClient(port))
{
string file;
Byte[] bytes;
server.Connect(ip, port);
TextReader reader = new StreamReader(fileName);
file = reader.ReadToEnd();
reader.Close();
// Посылаем
UTF8Encoding encoder = new UTF8Encoding();
bytes = encoder.GetBytes(file);
server.Send(bytes, bytes.Length);
server.Client.Dispose();
}