GraphQLHttpClient вложенная строка json с #

Я получаю этот ответ от конечной точки GraphQL:

      "container": {
                            "id": "X",
                            "containerId": "XYZ",
                            "metaData":"{\"postnummer\": \"9000 Aalborg\", \"ejendomsnr\": \"12345\", \"kundenr\": \"12345\", \"address\": \"\Ågade 5 C, 9000 Aalborg\", \"vej\": \"\Ågade\", \"nr\": \"5 C\"}",
                            "wasteFraction": {
                                "wasteCategory": "Combustion",
                                "wasteSubstance": "Gaseous",
                                "wasteTypes": {
                                    "edges": [
                                        {
                                            "node": {
                                                "name": "Residual waste"
                                            }
                                        }
                                    ]
                                }
                            }
                        }

Моя проблема связана с атрибутом metaData, который сам по себе является строкой json, которую GraphQLHttpClient / NewtonsoftJsonSerializer, похоже, не обрабатывает.

Если я определяю свойство как объект с правильными свойствами, сериализация не удастся. Если я определяю метаданные как строку, мне потом придется вручную десериализовать их.

Это работает, но тогда мне нужно вручную десиализовать строку для каждого результата:

      public class Container
{
    public string id { get; set; }
    public string containerId { get; set; }
    public string metaData { get; set; }
    public Wastefraction wasteFraction { get; set; }
}

public class MetaData
{
    public string postnummer { get; set; }

    public string husnr { get; set; }
    public string postdistrikt { get; set; }

    public string ejendomsnr { get; set; }
    public string kundenr { get; set; }
    public string address { get; set; }
    public string vej { get; set; }
    public string nr { get; set; }
}

Это не работает:

      public class Container
{
    public string id { get; set; }
    public string containerId { get; set; }
    public MetaData metaData { get; set; }
    public Wastefraction wasteFraction { get; set; }
}

public class MetaData
{
    public string postnummer { get; set; }

    public string husnr { get; set; }
    public string postdistrikt { get; set; }

    public string ejendomsnr { get; set; }
    public string kundenr { get; set; }
    public string address { get; set; }
    public string vej { get; set; }
    public string nr { get; set; }
}

Можно ли заставить GraphQLHttpClient / NewtonsoftJsonSerializer автоматически обрабатывать эту вложенную jsonstring?

0 ответов

Другие вопросы по тегам