我想将两行不同的XML发送到套接字,如下所示:
<GetServerTime UpTimeAtRequest="1919"/>
<Subscribe FrontId="priceFeed" URI="ffo:/price/productCode=VP-4-6-"/>
我正在使用Hercules来测试它,但它不会让我以那种格式发送它。我应该如何划分或格式化上面的XML,以便在连接到相应的IP地址和端口后,可以将它直接发送到使用Hercules的套接字?
我很乐意使用WebClient或C#中的内容发送它。
感谢。
答案 0 :(得分:2)
我不知道Hercules是什么,但通过客户端发送任意数据很容易:
using (var client = new TcpClient())
{
client.Connect(host, porg);
using (var stream = client.GetStream())
{
// Or some other encoding, of course...
byte[] data = Encoding.UTF8.GetBytes(xmlString);
stream.Write(data, 0, data.Length);
// Whatever else you want to do...
}
}
答案 1 :(得分:0)
WebClient使用非常简单(假设您的套接字使用HTTP协议),因此使用UploadString看起来像这样:
Uri uri = new Uri(@"http://www.mywebsite.com/someurl");
string myXml = "<insert valid xml here> /"
using (WebClient wc = new WebClient()
{
wc.UploadString(uri, myXml);
}
我只担心你的xml无效,因为它有两个根节点,没有xml头。