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サービスからの値の1つがbyte []である場合、このメソッドはその値を返しますか?そうでない場合は、そのメソッドをどのように組み合わせて(imが使用しているため)、byte []を返しますか?

4

1 に答える 1

1

要素の1つがを返す可能性があると言っていますか、byte[]それとも実際には?を表す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[]これにより、各学生の「Picture」要素から抽出されたリストが表示されます(それに応じてコードを変更して、学生インスタンスの一部としてPictureを作成します)。

于 2012-04-24T07:56:58.733 に答える