gpt4 book ai didi

protobuf-net - 是否可以使用 protobuf-net Serializer 并同时使用相应的 *.proto 文件?

转载 作者:行者123 更新时间:2023-12-03 07:46:13 24 4
gpt4 key购买 nike

我有一个 .NET 类型,它既不属于 ProtoContract 也不属于 DataContract。此外,并非其所有状态都需要原型(prototype)序列化。我可以为其定义一个 .proto 文件,但同时使用某种序列化程序来序列化它,就像它归因于 ProtoContract 一样吗?

谢谢。

最佳答案

作为第三个选项,可以使用 [XmlType][XmlElement(Order=n)]...但我认为这不是您想要的意思是;p

在“v2”中,这确实是可能的。您不需要定义 .proto - 您可以简单地告诉它在运行时做什么,例如:

var model = TypeModel.Create();
model.Add(typeof(SomeType)).Add("Foo", "Bar", "Blip");

现在将 model 存储在某处(并重新使用它),并使用 model.Serialize(...)model.Deserialize(... )。上面配置 SomeType 序列化 .Foo (作为字段 1)、.Bar (作为字段 2)和 .Blip(如字段 3)。当然,还有更多方法可以实现更细粒度的控制。

它将生成(根据第一次需要)一个序列化器(通过 IL 发出,速度非常快),该序列化器可按预期与您的类型配合使用。

有一个可下载的“v2”dll,但它需要更新 - 我在过去几周内做了很多修复。今天晚些时候我将尝试刷新此 dll,或者您也可以从代码构建。

关于protobuf-net - 是否可以使用 protobuf-net Serializer 并同时使用相应的 *.proto 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6058645/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com