我们可能需要为我们(大型)C#应用程序中的类编写自己的序列化程序 - BinarySerializer太慢且冗长,而protobuf-net存在基于接口的属性(我们有负载)的问题。
有没有人有任何好的提示和/或警告?我怀疑我们应该使用BinaryWriter和BinaryReader,但是我们还没有在C#中做过多点小事,任何陷阱都会受到赞赏!
同样,有没有人知道带有我可以查看的源代码的手动序列化器?
答案 0 :(得分:3)
提示/警告?它可以是严重的数量的代码。我建议编写一些简单的代码会更容易,这些代码会将您现有的模型转换为一个简单的DTO,可以通过选择现有的序列化API轻松地进行序列化。拥有DTO层(与域实体分开)也可以实现更简单的维护 - 您可以在不破坏序列化数据的情况下重构域实体。
自己做的选择(记住你强调模型相当复杂,你不是小提琴手):
之后你已经找到了一个可以强大,可扩展地工作的序列化格式,并支持你需要的场景(继承等)。
答案 1 :(得分:0)
考虑Type Convertors。我们在ViewState中广泛使用它们,它们运行良好。