Как настроить JsonOptions для SignalR в .NET Core 2.2?

Я хочу добавить StringEnumConverter в настройки сериализатора для SignalR, но я не могу найти способ, как это сделать.

Прямо сейчас я добавил атрибут в свой объект передачи, который делает трюк, но было бы намного лучше определить его глобально, как вы можете с Mvc.

services.AddMvc().AddJsonOptions(options =>
{
    options.SerializerSettings.Converters.Add(new StringEnumConverter(true));
});

Но тогда для SignalR.


person Shikyo    schedule 04.05.2019    source источник


Ответы (1)


Этого можно достичь, связав вызов AddJsonProtocol с AddSignalR в ConfigureServices. Вот пример:

services.AddSignalR()
    .AddJsonProtocol(options =>
    {
        options.PayloadSerializerSettings.Converters.Add(new StringEnumConverter(true));
    });

Ссылка: Параметры сериализации JSON / MessagePack

person Kirk Larkin    schedule 04.05.2019