【问题标题】:'AvroDeserializer<GenericRecord>' does not contain a definition for 'AsSyncOverAsync' and no accessible extension method“AvroDeserializer<GenericRecord>”不包含“AsSyncOverAsync”的定义,也没有可访问的扩展方法
【发布时间】:2020-07-24 22:13:57
【问题描述】:

我已经更新了我的统一项目 dll,之后我收到了这个错误

'AvroDeserializer' 不包含对 'AsSyncOverAsync' 并且没有可访问的扩展方法 'AsSyncOverAsync' 接受“AvroDeserializer”类型的第一个参数 可以找到(您是否缺少 using 指令或程序集 参考?)

在这一行

  .SetValueDeserializer(new AvroDeserializer<GenericRecord>(schemaRegistry).AsSyncOverAsync())

我不知道为什么这不是方法不可用。这是我的dll文件:

【问题讨论】:

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


    【解决方案1】:

    我已经设法在program.cs 中仅使用此代码复制了一个小型解决方案,我可以构建解决方案并查看位于Confluent.Kafka.SyncOverAsync 命名空间中的AsSyncOverAsync 扩展方法。

    class Program
    {
        static void Main(string[] args)
        {            
            IEnumerable<KeyValuePair<string, string>> consumerConfig = new List<KeyValuePair<string, string>>();
            using (var schemaRegistry = new CachedSchemaRegistryClient(new SchemaRegistryConfig { }))
            using (var consumer =
                new Confluent.Kafka.ConsumerBuilder<string, GenericRecord>(consumerConfig)
                    .SetValueDeserializer(new AvroDeserializer<GenericRecord>(schemaRegistry).AsSyncOverAsync())
                    .Build()) { }
        }
    }
    

    这是*.csproj 文件:

    <Project Sdk="Microsoft.NET.Sdk">
    
      <PropertyGroup>
        <OutputType>Exe</OutputType>
        <TargetFramework>netcoreapp3.1</TargetFramework>
      </PropertyGroup>
    
      <ItemGroup>
        <PackageReference Include="Confluent.Kafka" Version="1.4.0" />
        <PackageReference Include="Confluent.SchemaRegistry.Serdes.Avro" Version="1.4.0" />
      </ItemGroup>
    
    </Project>
    

    您似乎缺少 Confluent.SchemaRegistry.Serdes.Avro 软件包,因此请尝试从 Nuget 手动安装它们。

    【讨论】:

    • 谢谢你的回答,已经安装好了。我的愚蠢错误是我之前使用了自己的 AvroDeserializer 类。
    猜你喜欢
    • 2021-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多