Я получаю сообщения JSON, которые соответствуют следующему классу:
public class Response
{
public int Code { get; }
public string Message { get; }
public string Result { get; }
}
Но значение свойства Result
зависит от того, что мы получаем в Code
, и не имеет фиксированной структуры.
Например, если Code = 1
, Result вернет список объектов типа X, а если Code = 2
, Result вернет список объектов типа Y.
При попытке десериализациисообщение, которое я получаю, с типом результата, установленным в string
, похоже, не работает.
var responseObj = JsonConvert.DeserializeObject<Response>(response);
if (responseObj.Code == 1)
{
return responseObj.Result;
}
Приведенный выше оператор возврата вызывает следующее исключение:
Обнаружен неожиданный символпри разборе значения: [.Путь 'Результат'
Как я могу определить свой класс, чтобы он получал весь текст Результата, и я мог принять решение о его десериализации позже?Потому что все мои запросы отвечают указанной выше структурой, и я хотел бы управлять всеми этими запросами из одного места.