Я работаю на общем сервере и клиентских программах.Проблема, с которой я сталкиваюсь, заключается в том, что когда я нахожусь в OnDataReceived на моем клиенте и сервере, я не знаю, что делать с данными.В идеале он должен выводить полученные данные в окно, но я не знаю, будет ли это приложение Form или Console.Поэтому вопрос в том, как мне создать общий метод, который может обрабатывать оба, или, если это невозможно, что мне делать вместо этого?
Код, с которым я работаю:
SocketPacket theSockId = (SocketPacket)asyn.AsyncState;
int iRx = theSockId.m_currentSocket.EndReceive(asyn);
char[] chars = new char[iRx + 1];
Decoder decode = Encoding.Default.GetDecoder();
int charLength = decode.GetChars(theSockId.dataBuffer, 0, iRx, chars, 0);
String szData = new String(chars);
//Handle Message here
WaitForData();
И сокет класса пакета:
class SocketPacket
{
public Socket m_currentSocket;
public byte[] dataBuffer = new byte[1024];//Buffer to store the data by the client
public SocketPacket(Socket socket)
{
m_currentSocket = socket;
}
}
PS.Я не знаю, нужно ли это знать, но я делаю асинхронный клиент / сервер.