Разобрать JSON и проверить, является ли это подтипом? - PullRequest
0 голосов
/ 03 октября 2019

Какой самый простой и элегантный способ проанализировать JSON с Json.Net и проверить, является ли он подтипом? Вот пример.

Общая библиотека классов:

public abstract class State {}
public class PlayerState : State {}
public class VehicleState : State {}

На стороне сервера:

 var _state = Utils.GetStateFromString<State>(s);
            if (_state is PlayerState) {
                PlayerState state = (PlayerState) _state;
                ...
            }
            else if (_state is VehicleState) {
                VehicleState state = (VehicleState) _state;
                 ...
            }

, где s - сериализованная строка из клиента.

Я понял, что он работает только с использованием TypeNameHandling = TypeNameHandling.Objects и созданием пользовательского SerializationBinder, но очень сложно добавлять все типы в связыватель, поскольку на клиенте и сервере существуют разные сборки. Я знаю о JsonSubType lib, но моя платформа не позволяет добавлять ссылки в проект

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...