【问题标题】:C# .net core Confluent.Kafka Avro DeserializationC# .net core Confluent.Kafka Avro 反序列化
【发布时间】:2020-03-13 20:37:16
【问题描述】:

我有一个使用生成的 avro 类。 avrogen -s customer-v1.avsc .

使用 Confluent.Kafka nuget 包。 我能够序列化我的 CustomerAvro 并发送到 Kafka Broker。

但我在反序列化时遇到问题,因为它说我没有设置默认反序列化器。

能否请有这方面专业知识的人帮我一把。 非常感谢。

【问题讨论】:

  • 我可以建议您在问题中包含实际文本,而不仅仅是图像吗?它使人们更容易阅读和回答,并帮助可能搜索相同问题的其他人。

标签: c# apache-kafka avro confluent-schema-registry confluent-platform


【解决方案1】:

【讨论】:

    【解决方案2】:

    只是用实际代码添加到上一个回复中,因为提供的链接中的行号不再正确

                using (var schemaRegistry = new CachedSchemaRegistryClient(schemaRegistryConfig))
                using (var consumer =
                    new ConsumerBuilder<string, User>(consumerConfig)
                        .SetKeyDeserializer(new AvroDeserializer<string>(schemaRegistry).AsSyncOverAsync())
                        .SetValueDeserializer(new AvroDeserializer<User>(schemaRegistry).AsSyncOverAsync())
                        .SetErrorHandler((_, e) => Console.WriteLine($"Error: {e.Reason}"))
                        .Build())
    

    初始 schemaRegistry 是使反序列化器能够使用适当的架构引用的基础。

    Confluent.Kafka.Examples.AvroSpecific

    【讨论】:

      猜你喜欢
      • 2021-11-04
      • 1970-01-01
      • 2018-06-13
      • 2018-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-14
      • 1970-01-01
      相关资源
      最近更新 更多