如何将字节数组响应从WebClient转换为Xml?

sha*_*shi 6 c# asp.net

我正在调用第三方服务,他们将响应发送为Xml.但是,当我使用WebClient调用服务时,我得到的响应是一个字节数组.

var client = new WebClient();
var result = client.UploadValues(post_url, data);
Run Code Online (Sandbox Code Playgroud)

结果是一个字节数组.如何将其转换为XML以读取第三方服务给出的响应?

Hen*_*man 9

您可以将字节转换为字符串:

string xml = Encoding.UTF8.GetString(result);
Run Code Online (Sandbox Code Playgroud)

然后解析它:

XDocument doc = XDocument.Parse(xml);
Run Code Online (Sandbox Code Playgroud)


Tho*_*que 7

使用MemoryStream:

using (var stream = new MemoryStream(result))
{
    var doc = XDocument.Load(stream);
    ...
}
Run Code Online (Sandbox Code Playgroud)