У меня странный вопрос. Я пытаюсь написать C # сервер - клиентский проект, используя сокеты для связи. Я новичок в C #, но я написал тот же проект на Java, и он прекрасно работал там.
Итак, клиент подключается к серверу, создает потоки чтения / записи из сетевого потока сокета и отправляет через него одну строку, но сервер ничего не получает.
Я уверен, что сервер работает нормально, потому что я подключил к нему клиент Java и он получает строку от клиента.
Я не понимаю, как происходит подключение сокета, но через него ничего не проходит.
Вот код клиента:
...
socket = new TcpClient("localhost", PORT);
NetworkStream ns = socket.GetStream();
StreamReader rin = new StreamReader(ns);
StreamWriter wout = new StreamWriter(ns);
Console.WriteLine("-->Connected to server");
string msg;
for (; ; )
{
Console.WriteLine("waiting to write");
while(user.Equals("")) //user is set in Form thread working in parallel
System.Threading.Thread.Sleep(100);
Console.WriteLine("sending: " + user);
wout.WriteLine(user);
wout.Flush();
Console.WriteLine("SENT");
...
PORT такой же, исключений не выдается (у меня есть попытка - обойти это), клиент отправляет строку через StreamWriter, потому что он выводит «SENT», но сервер ожидает на принимающей стороне (streamReader. ReadLine ()) и ничего не происходит ...