XML over TCP套接字

我想知道是否有人能够帮我解决我遇到的一个小问题。

我将收到一个将通过tcp套接字发送的xml文件。 我正在尝试创建一个可以充当服务器并通过tcp套接字发送xml文件的小应用程序。 然后,我可以开始测试将接收和处理此xml文档的初始应用程序。

我已经尝试过谷歌,并继续在这个问题上遇到问题。

一种可能的解决方案是将xml作为一系列字符串或字节数组加载并发送。 字节数组方法可能是最简洁的,使用网络库networkcomms.net调用发送的应用程序看起来像这样:

using System; using System.Collections.Generic; using System.Linq; using System.Text; using NetworkCommsDotNet; namespace Client { class Program { static void Main(string[] args) { byte[] bytesToSend = File.ReadAllBytes("filename.xml"); TCPConnection.GetConnection(new ConnectionInfo("127.0.0.1", 10000)).SendObject("XMLData", bytesToSend); Console.WriteLine("Press any key to exit client."); Console.ReadKey(true); NetworkComms.Shutdown(); } } } 

和服务器:

 using System; using System.Collections.Generic; using System.Linq; using System.Text; using NetworkCommsDotNet; namespace Server { class Program { static void Main(string[] args) { NetworkComms.AppendGlobalIncomingPacketHandler("XMLData", (packetHeader, connection, incomingXMLData) => { Console.WriteLine("Received XMLData"); File.WriteAllBytes("filename.xml", incomingXMLData); }); TCPConnection.StartListening(true); Console.WriteLine("Server ready. Press any key to shutdown server."); Console.ReadKey(true); NetworkComms.Shutdown(); } } } 

您显然需要从网站下载NetworkCommsDotNet DLL,以便您可以在“使用NetworkCommsDotNet”参考中添加它。 另请参阅客户端示例中的服务器IP地址当前为“127.0.0.1”,如果您在同一台计算机上同时运行服务器和客户端,这应该可以工作。 有关更多信息,请查看入门或如何创建客户端服务器应用程序文章。