我想序列化对象到string,并返回。 我们使用protobuf-net将一个对象转换成Stream并返回,成功。 但是,串stream和返回…不是那么成功。 在通过StreamToString和StringToStream ,新的Stream不会被protobuf-net反序列化; 它会引发一个Arithmetic Operation resulted in an Overflowexception的Arithmetic Operation resulted in an Overflow 。 如果我们反序列化原始stream,它就可以工作。 我们的方法: public static string StreamToString(Stream stream) { stream.Position = 0; using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { return reader.ReadToEnd(); } } public static Stream StringToStream(string src) { byte[] byteArray = Encoding.UTF8.GetBytes(src); return new MemoryStream(byteArray); } 我们的示例代码使用这两个: […]