Estoy tratando de enviar un mensaje tcp a un servidor gprs. Estaba tratando de hacerlo a través de WCF, sin embargo, siempre veo tutoriales o información sobre el consumo de servicios, sin embargo, no hay ningún servicio para consumir. Simplemente está enviando un mensaje de tipo tcp a un servidor usando WCF. Tengo el puerto y el servidor para la conexión. ¿Cómo podría hacerlo? Necesito crear el cliente WCF para enviar mensajes, pero no sé cómo hacerlo sin servicios.
estoy usando visual studio y lenguaje c#
Estoy tratando de enviar un mensaje tcp a un servidor gprs. Estaba tratando de hacerlo a través de WCF
Dado que el servidor remoto no es un servicio SOAP, sino simplemente un servidor que expone un puerto TCP, debe usar las API de TCP en lugar de WCF. La razón es que el contenido y el protocolo del mensaje serán diferentes. WCF usa mensajes SOAP que generalmente se envían como texto XML en lugar de TCP, que es binario. Ahora puede configurar WCF para serializar como binario, pero el resultado seguirá siendo diferente. Hay muchas más diferencias entre TCP y WCF que no abordaré aquí.
Utilice el siguiente ejemplo de TCP:
TcpClient client = new TcpClient("localhost", 80); //enter your server ip and port // Translate the passed message into ASCII and store it as a Byte array Byte[] data = System.Text.Encoding.ASCII.GetBytes(message); // Get the stream for writing NetworkStream stream = client.GetStream(); // Send the message to the connected TcpServer. stream.Write(data, 0, data.Length); //Close everything to avoid memory leaks stream.Close(); client.Close();