纯.NET的XMLHTTP实现方法
公司的同事需要使用XMLHTTP传送XML描述到WEB服务器并捕捉返回的结果,虽然使用MSXML可以实现,考虑是不是可以一种纯.NET的方式来实现这个功能。想用HttpRequest来实现发送XML描述到服务器,但在MSDN中并没有很详细的关于这方面的资料,经过试验,可以用这种方法实现。
public DataSet GetXmlData()
![](/Images/OutliningIndicators/None.gif)
{
![](/Images/OutliningIndicators/InBlock.gif)
string url="http://localhost:16800";
![](/Images/OutliningIndicators/InBlock.gif)
HttpWebRequest req=(HttpWebRequest)WebRequest.Create(url);
![](/Images/OutliningIndicators/InBlock.gif)
req.Method="POST";
//插入公司内部服务的一个头
req.Headers.Add("rBeacon-Service","1001");
![](/Images/OutliningIndicators/InBlock.gif)
req.ContentType="application/x-www-form-urlencoded";
![](/Images/OutliningIndicators/InBlock.gif)
XmlDocument doc=new XmlDocument();
![](/Images/OutliningIndicators/InBlock.gif)
doc.Load("query.xml");
![](/Images/OutliningIndicators/InBlock.gif)
string para=doc.OuterXml;
![](/Images/OutliningIndicators/InBlock.gif)
StreamWriter myWriter=new StreamWriter(req.GetRequestStream());
![](/Images/OutliningIndicators/InBlock.gif)
myWriter.Write(para);
![](/Images/OutliningIndicators/InBlock.gif)
myWriter.Close();
![](/Images/OutliningIndicators/InBlock.gif)
HttpWebResponse rsp=(HttpWebResponse)req.GetResponse();
![](/Images/OutliningIndicators/InBlock.gif)
DataSet ds=new DataSet();
![](/Images/OutliningIndicators/InBlock.gif)
ds.ReadXml(rsp.GetResponseStream(),XmlReadMode.Auto);
![](/Images/OutliningIndicators/InBlock.gif)
return ds;
![](/Images/OutliningIndicators/InBlock.gif)
}
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)