将响应流加载到XDocument中,缺少根元素

时间:2011-04-28 15:42:43

标签: c# stream linq-to-xml

我已经读过将流的位置设置为0可以解决此问题,但由于流“不支持搜索操作”而失败。

它失败了:

XDocument doc = XDocument.Load(resp.GetResponseStream());

阅读流:

string t = new StreamReader(resp.GetResponseStream(), Encoding.Default).ReadToEnd();

...揭示我的xml不可能更简单:

<xml version="1.0">
  <ActiveStorms>
  </ActiveStorms>
</xml>

这有点不正常吗?

感谢您的帮助, 麦克

2 个答案:

答案 0 :(得分:1)

XML文档不以</xml>结束标记结束,因此删除它。最初的<xml version="1.0">应为:<?xml version="1.0">(请注意问号)。

因此有效版本如下:

<?xml version="1.0">
<ActiveStorms>
</ActiveStorms>

答案 1 :(得分:0)

正确的XML声明是

<?xml version="1.0" encoding="utf-8" ?>

然后添加根节点<ActiveStorms> 所以,

<?xml version="1.0" encoding="utf-8" ?>
<ActiveStorms>
</ActiveStorms>