如何使用WCF流处理XElement/XDocument
本文关键字:XElement XDocument 处理 何使用 WCF | 更新日期: 2023-09-27 18:10:04
我有以下方法签名。我不能改变它(也就是说,我不能改变返回类型)。
public Stream GetMusicInfo(string songId)
{
XElement data = dao.GetMusicInfo(songId);
// how do I stream the XElement?
}
我如何用WCF流XElement/XDocument ?
这相当简单,如果您不介意实际上获取第一行中的所有数据:
public Stream GetMusicInfo(string songId)
{
XElement data = dao.GetMusicInfo(songId);
MemoryStream ms = new MemoryStream();
data.Save(ms);
ms.Position = 0;
return ms;
}
换句话说,只是在内存中写出来,然后在内存中表示返回一个流。注意Position = 0;
调用,这是必要的,否则流将定位在数据的端。
我将希望 WCF会对流做正确的事情。