.NET Core 5 Проблема с сериализатором RawRabbit/Внедрением зависимостей

0

Вопрос

У меня есть микросервис на основе .NET Core 2.2. Я использую RawRabbit (версия 2.0.0-beta9) в качестве служебной шины. Вместе с ним были установлены следующие пакеты:

<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" />

Вот как выглядит мой контроллер:

 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}");
}

Проблема возникает, когда код пытается выполнить следующее:

await _busClient.PublishAsync(model);

Исключение, которое я получаю, это:

Метод не найден: 'Void Newtonsoft.Json.JsonSerializer.set_TypeNameAssemblyFormat(System.Runtime.Сериализация.Форматтеры.форматтерассборка)'.

1

Лучший ответ

0

Похоже, это не связано с вашим брокером сообщений или публикацией (кстати, было бы лучше, если бы вы упомянули, было ли сообщение получено вашим потребителем или нет) Но, похоже, где-то вы используете TypeNameAssemblyFormat в newton JSON, который сейчас устарел, согласно здесь.

[ObsoleteAttribute("TypeNameAssemblyFormat is obsolete. Use TypeNameAssemblyFormatHandling instead.")]
public FormatterAssemblyStyle TypeNameAssemblyFormat { get; set; }

Вы должны использовать TypeNameAssemblyFormatHandling. Также смотрите здесь

2021-11-29 20:34:02

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................