简而言之:如何为多个.Net程序集生成JSON架构,仍然使用强类型反序列化?
我们正在使用Microsoft Avro在系统之间序列化.Net(C#)对象。
因为Avro使用顺序索引来保持类型的引用,并且因为我们使用Reflection来序列化,所以每次编译新版本时,类型索引都会改变。
发件人和收件人最终会有不同的类型索引,然后他们最终反序列化为错误的类型;这意味着最好的情况,我们得到一个错误,最坏的情况,我们得到不匹配的数据。
无法一次升级所有系统。
我看到避免此问题的唯一方法是使用Schema,但我找不到1)如何使用代码生成该模式(我不想手动创建模式),以及2)继续使用强序列化/反序列化时键入
我通读了这个:https://github.com/Azure/azure-content/blob/master/articles/hdinsight/hdinsight-dotnet-avro-serialization.md我无法找到实现这一目标的方法......在我看来,这应该是开发人员使用Avro应该具有的典型问题,所以我缺少什么?