C# 如何将Streamreader数据转换为XmlDocument?

C# 如何将Streamreader数据转换为XmlDocument?,c#,xml,streamreader,C#,Xml,Streamreader,在C#中,我尝试调用一个返回XML文件的Web服务 我可以向webservice发出HttpWebRequest,并将输出存储在StreamReader中。但是,如何将这些数据转换为XMLDocument?使用System.Xml.Linq.XDocument.Load(streamreader) Use-我正在使用接受XmlReader的重载来利用的自动编码检测: XmlDocument document = new XmlDocument(); using(Stream stream = r

在C#中,我尝试调用一个返回XML文件的Web服务


我可以向webservice发出HttpWebRequest,并将输出存储在StreamReader中。但是,如何将这些数据转换为XMLDocument?

使用System.Xml.Linq.XDocument.Load(streamreader)

Use-我正在使用接受
XmlReader
的重载来利用的自动编码检测:

XmlDocument document = new XmlDocument();
using(Stream stream = request.GetResponse().GetResponseStream()) {        
    using(XmlReader reader = XmlReader.Create(stream)) {
        document.Load(stream);
    }
}

您应该将收到的输出存储在StringWriter或StringWriter中,并使用XmlDocument.load(string)加载它。

假定响应流编码与XML编码相同。我注意到,在创建XmlReader的同时,您仍然只将原始的“流”对象传递到document中。Load()这是一个基于SOAP的web服务吗?那么您不应该使用HttpWebRequest。只需使用“添加服务引用”并调用为您创建的代理类的“方法”——不涉及XML。因为他想存储它:)。事实上,我会支持上面杰夫的解决方案。