首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.NET核心5 RawRabbit序列化程序/依赖项注入问题

.NET核心5 RawRabbit序列化程序/依赖项注入问题
EN

Stack Overflow用户
提问于 2021-11-24 05:53:29
回答 1查看 35关注 0票数 0

我有基于.NET Core2.2的微服务。我使用RawRabbit (版本2.0.0-beta9)作为服务总线。以下软件包随其一起安装:

代码语言:javascript
复制
<PackageReference Include="RawRabbit" Version="2.0.0-beta9" />
<PackageReference Include="RawRabbit.DependencyInjection.ServiceCollection" Version="2.0.0-beta9" />
<PackageReference Include="RawRabbit.Operations.Publish" Version="2.0.0-beta9" />
<PackageReference Include="RawRabbit.Operations.Subscribe" Version="2.0.0-beta9" />

这是我的控制器的样子:

代码语言:javascript
复制
 private readonly IBusClient _busClient;

//...constructor that inits the _busClient

[HttpPost("")]
public async Task<IActionResult> Post([FromBody] CreateActivity model)
{
    model.Id = Guid.NewGuid();
    await _busClient.PublishAsync(model); //Exception thrown here
    return Accepted($"Activities/{model.Name}");
}

当代码尝试执行以下操作时,就会出现问题:

代码语言:javascript
复制
await _busClient.PublishAsync(model);

我得到的例外是:

找不到方法:'Void Newtonsoft.Json.JsonSerializer.set_TypeNameAssemblyFormat(System.Runtime.Serialization.Formatters.FormatterAssemblyStyle)'.

EN

回答 1

Stack Overflow用户

发布于 2021-11-29 20:34:03

这似乎与你的消息代理或发布无关(顺便说一句,如果你提到消息是否被你的消费者收到会更好),但你似乎正在使用newton JSON中的TypeNameAssemblyFormat,据here说,它现在已经过时了。

代码语言:javascript
复制
[ObsoleteAttribute("TypeNameAssemblyFormat is obsolete. Use TypeNameAssemblyFormatHandling instead.")]
public FormatterAssemblyStyle TypeNameAssemblyFormat { get; set; }

您应该使用TypeNameAssemblyFormatHandling。另请参阅here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70091316

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档