如何将对象列表转换为流

时间:2012-12-14 09:07:04

标签: wcf stream

嗨我正在构建一个wcf服务,我试图让它作为StreamedResponse发送请求。现在我的服务用于返回一个对象列表,现在应该只返回一个流。我的问题是我怎么能将此对象列表转换为流,以便可以正确发送。我正在用C#编写我的wcf服务。谢谢你的时间

1 个答案:

答案 0 :(得分:3)

我建议您将列表序列化为JSON或XML,然后将其转换为流。假设您的列表包含字符串,这里是一个将字符串列表序列化为json并将其加载到内存流中的示例。我希望这对你有一定的教育价值,让你更好地理解这种编程语言的可能性:)

List<string> listOfStrings = new List<string>();
listOfStrings.Add("Hello");
listOfStrings.Add("World!");
listOfStrings.Add("Foo");
listOfStrings.Add("bar");


// this is of datatype string
var json = new JavaScriptSerializer().Serialize(listOfStrings);

// this is an array of datatype byte
var bytes = System.Text.Encoding.UTF8.GetBytes(json);

// your stream
var memStream = new MemoryStream(bytes);

// TODO: Add code for sending your memory stream