我正在按照教程使用Google协议缓冲区进行C#。我没有看到将对象转换为字节数组的示例 - 有谁知道如何做到这一点?我已经使用protoc编译器自动生成了一个FilePath类,到目前为止已经这样了:
FilePath fp = new FilePath
{
Path = "TestPath",
RealTimeMultiple = 5.0f
};
所以,我需要知道如何在不使用BinaryFormatter的情况下正确序列化fp对象。
答案 0 :(得分:15)
假设您正在使用Google.Protobuf
nuget包,您可以使用:
using Google.Protobuf;
...
byte[] bytes = fp.ToByteArray();
您需要using
的{{1}}指令才能使IMessage.ToByteArray
扩展方法可用 - 这可能是您之前缺少的。