Создать несколько таблиц в одном Json без использования JArray? - PullRequest
0 голосов
/ 30 августа 2018

Я работаю над программой IMDB, в которой я перечисляю людей, у которых есть фильмография, дискография и тому подобное. Итак, я уже сделал свой взгляд в MVVM, и теперь я пытаюсь сериализовать свой JSON, чтобы соответствовать ему. Прямо сейчас я собираю свои столы так:

dynamic discography = new JObject(new JProperty("DiscographyVM", jsonDiscography));
dynamic filmography = new JObject(new JProperty("FilmographyVM", jsonFilmography));

dynamic fullJson = new JArray();
fullJson.Add(discography);
fullJson.Add(filmography);

Это даст мне JSON, похожий на это:

[
  {
    "Discography" : [
      { 
        "Album" : "MyAlbum",
        "Year" : 2017
      },
      { "Album" : "MySecondAlbum",
        "Year" : 2018
      }
    ],
    "Filmography" : [
      {
        "Film" : "MyFirstMovie",
        "Year" : 2017
      },
      {
        "Film" : "MySecondMovie",
        "Year" : 2018
      }
    ]
  }
]

Я пытаюсь избавиться от внешних [ ] скобок. Поэтому я думаю, что мне нужно изменить мою переменную dynamic fullJson на что-то другое, но я не могу понять, к чему. Есть идеи?

ОБНОВЛЕНИЕ, я пытаюсь получить эту структуру:

  {
    "Discography" : [
      { 
        "Album" : "MyAlbum",
        "Year" : 2017
      },
      { "Album" : "MySecondAlbum",
        "Year" : 2018
      }
    ],
    "Filmography" : [
      {
        "Film" : "MyFirstMovie",
        "Year" : 2017
      },
      {
        "Film" : "MySecondMovie",
        "Year" : 2018
      }
    ]
  }

1 Ответ

0 голосов
/ 30 августа 2018

Используйте JObject вместо JArray. Давайте посмотрим:

dynamic discography = new JProperty("Discography", jsonDiscography);
dynamic filmography = new JProperty("Filmography", jsonFilmography);

dynamic fulljson = new JObject { discography, filmography };

Попробуйте онлайн!

Обратите внимание, что я также заменяю

dynamic fullJson = new JObject();
fullJson.Add(discography);
fullJson.Add(filmography);

с

dynamic fulljson = new JObject { discography, filmography };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...