У меня есть сервис Backend Backend Core GraphQL .NET, потребляемый в приложении Blazor Web Assembly с запросом GetData GraphQL с классом, имеющим словарь public class SomeClass
{
public int Id { get; set; }
public Dictionary Items { get; set; }
}
< /code>
Этот класс находится в пакете Nuget на стороне сервера и клиента, поэтому нельзя изменить. Когда я выполнил запрос GraphQL из клиента, отображается ошибка: < /p>
Компонент рендеринга неадегнутых исключений: не может двойной текущий массив JSON (например, [1,2,3]) в тип System.collection.generic.dictionary`2 [System.String, System.decimal] 'Потому что тип Trast Aby.g. {"name": "value"}), чтобы правильно deserialize. Jsonarrayattribute также может быть добавлен в тип, чтобы заставить его десериализовать из массива JSON. < /P>
< /blockquote>
его, поскольку ответ от GraphQL возвращается как массив объектов JSON для словаря и из -за вышеуказанной ошибки его не преобразуется в словари. Я знаю, что могу написать конвертер, чтобы десериализовать его с помощью GraphQL Newtonsoft Serializer, но есть ли лучший подход к обработке словарей для отправки из бэкэнд на сторону клиента?
Подробнее здесь: https://stackoverflow.com/questions/793 ... dictionary
Ошибка GraphQL при преобразовании массива объектов JSON в словарь ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение