Как рекурсивно конвертировать json файл в словарь в до tnet ядро - PullRequest
1 голос
/ 17 марта 2020

У меня есть файл swagger do c json, и я хотел бы преобразовать его в Dictionary<string,dynamic>, ключом которого будет имя свойства, а значением может быть другой словарь типа Dictionary<string,dynamic>, пока значение не станет примитивным , а не json объект.

Я начал с var dic = JSonObject.Parse("file.json").Properties().ToDictionary(p=>p.Name, p => p.Value);

Как рекурсивно проверить и преобразовать p.Value в словарь, если значение не является примитивным типом?

1 Ответ

0 голосов
/ 18 марта 2020

Я только что нашел этот пакет Microsoft.OpenApi.Readers , в котором уже есть все, что я хотел, чтобы разобрать документ чванства, и использовал его вот так

       string url = "https://localhost:10155/swagger/v1/swagger.json";
        var httpClient = new HttpClient();
        var stream = await httpClient.GetStreamAsync(url);
        var openApiDocument = new OpenApiStreamReader().Read(stream, out var diagnostic);
        return View(openApiDocument);

Тогда я смогу получить все OpenApiDocument объект в дереве

...