C # Hjson возвращает ноль после десериализации - PullRequest
0 голосов
/ 27 марта 2019

У меня есть такой hjson-файл, который я хочу десериализовать и работать с ним:

{
"TestConfig": {
  "SecondConfig": {
    "ConnectionString": "Integrated Security = true; Data Source = dataPseudo; Initial Catalog = catalogPseudo; Connect Timeout = 180",
    "SpecificationPseudo": "pseudo",
    "NumberOfHintsPseudo": 300
  },

  "ThirdConfig": "pseudo"
}... // more hjson coming here.

Я загружаю его с помощью метода HjsonValue.Load, например:

private static Foo convertJson()
{
var loadedValue = HjsonValue.Load("hjsonFile.hjson").ToString();
return new JsonSerializer<Foo>().DeserializeFromString(loadedValue);
// another failed method: return JsonConvert.DeserializeObject<Foo>(loadedValue);
// A third failed method: return JsonConvert.DeserializeObject<Dictionary<string, Foo>>(loadedValue);
}

Iдумаю, что моя проблема в 2-х # -кодированных строках, но не могу понять, что.Я неправильно десериализовал или в чем проблема?Я подозреваю, что это потому, что это вложенный JSON, но не могу найти способ его десериализации.Попытка использовать словарь как ответ в другом вопросе стека, но у меня это не сработало.

Примечание: первый и второй опробованный метод возврата не возвращают никаких ошибок, а простовернуть исключение nullreference, поскольку «SecondConfig» и «ThirdConfig» оба имеют значение null.

Обновление (с помощью er-sho): удален элемент «root» из hjson (TestConfig)), что решило проблему.

...