0

所以最近我一直在使用这个方法来返回一个字符串:

string uri = "http://localhost:8000/Service/Student";
XDocument xDoc = XDocument.Load(uri);
var studentcollection = xDoc.Descendants("Student")
    .Select(n => new
    {
      FirstName = n.Element("FirstName").Value,
    })
    .ToList();

它工作正常,但如果 web 服务中的一个值是 byte[],这个方法会返回那个值吗?如果没有,您将如何组合该方法(因为我习惯了它)并返回一个字节 []?

4

1 回答 1

1

您是说其中一个元素可以返回 abyte[]还是真的是表示 a 的 base 64 编码字符串byte[]?如果是后者,您可以从值中提取字节:

byte[] decoded = Convert.FromBase64String(value);

完整代码:

string uri = "http://localhost:8000/Service/Student";
XDocument xDoc = XDocument.Load(uri);
var studentcollection = xDoc.Descendants("Student")
    .Select(Convert.FromBase64String(n.Element("Picture").Value))
    .ToList();

这将为您提供byte[]从每个学生的“图片”元素中提取的列表(相应地更改代码以创建图片作为学生实例的一部分)。

于 2012-04-24T07:56:58.733 回答