private static void ClientConnection(Socket clientSocket, int clNr) { byte[] Buffer = new byte[clientSocket.SendBufferSize]; int readByte; do { // Receive readByte = clientSocket.Receive(Buffer); // Do stuff byte[] rData = new byte[readByte]; Array.Copy(Buffer, rData, readByte); // Console.WriteLine("We got: (" + clNr.ToString() + ")" + System.Text.Encoding.UTF8.GetString(rData)); DTOs.Car c = ByteToCar(rData); Console.WriteLine(c.Make + " " + c.Year.ToString()); // Piggyback data clientSocket.Send(new byte[4] { 65, 66, 67, 78 }); } while (readByte > 0); Console.WriteLine("Client disconnected"); Console.ReadKey(); }
static byte[] CarToByte(DTOs.Car car) { BinaryFormatter bf = new BinaryFormatter(); MemoryStream ms = new MemoryStream(); bf.Serialize(ms, car); return(ms.ToArray()); }