从HTTP POST请求有效负载中检索XML

时间:2011-04-11 17:42:54

标签: asp.net linq-to-xml

我有一个ActiveX,它使用某个XML文档的有效负载PO​​ST到服务器(HTTP处理程序)。

有没有比下面更好的方法将有效负载检索到XML?

private static byte[] RequestPayload()
{
   int bytesToRead = HttpContext.Current.Request.TotalBytes;
   return (HttpContext.Current.Request.BinaryRead(bytesToRead));
}

using (var mem = new MemoryStream(RequestPayload()))
{
    var docu = XDocument.Load(mem);
}

一旦我拥有“docu”,我就可以使用LINQ to XML进行查询。

由于

1 个答案:

答案 0 :(得分:1)

只需从Request的InputStream加载XML,例如

XDocument doc;
using (Stream input = HttpContext.Current.Request.InputStream)
{
  doc = XDocument.Load(input);
}

我的视图中不需要MemoryStream。