Я работаю над простым проектом для своего класса Data Communications. Я предсказывал, что это займет у меня максимум два часа, но я впервые пишу программное обеспечение, которое устанавливает соединение с Интернетом, и впервые работаю с C #, и я столкнулся с довольно серьезным препятствием.
Я установил соединение с сервером, но, похоже, не получил никакой обратной связи с сервером. Вот код, который я выполняю, чтобы установить соединение:
TcpClient conn = new TcpClient();
conn.Connect(host, port);
StreamReader reader = new StreamReader(conn.GetStream());
StreamWriter writer = new StreamWriter(conn.GetStream());
Console.WriteLine(conn.Connected); //This line does print true.
//Console.WriteLine(reader.ReadLine()); I thought I'd get a message when I initially
//connected to the server but this line would hang
Вот где я устанавливаю соединение. В соответствии со спецификациями проекта, ввод 0 должен побудить сервер вернуть номер заявки. поэтому у меня есть следующий код:
writer.WriteLine("0");
return reader.ReadLine();
Prgram зависает при попытке выполнить reader.ReadLine (). Я пробовал другие методы в ридере, но, кажется, он завис на всех из них. Я посмотрел на множество примеров кода с настройками, похожими на мои. Кто-нибудь может увидеть какие-либо проблемы с моим кодом? Я не думаю, что это проблема с сервером. Мой профессор сказал что-то об использовании команды unix "telnet [host] [port]", и я использовал тот же хост и порт для этого кода. Я разрабатываю это на машине с Windows 7. Я прошу прощения за свое невежество как в C #, так и в сетевом программировании.
Если я пропустил какую-либо ужасную информацию, пожалуйста, дайте мне знать. Поскольку я впервые сталкиваюсь с этим, думаю, я упустил что-то срочное.
Спасибо огромное, ребята!