Я создаю панель управления (в проекте .NET MVC), которая в основном получает данные через API и отображает их в (несколько причудливом) виде.
Данные, которые я получаю, отформатированы в json, и я знаю формат «корня» (не уверен, что это правильный термин при разговоре о json, не стесняйтесь меня поправлять), что-то вроде этого:
{
response :
{
fields :
[{
name : name1,
},
{
name : name2,
},
...
],
results :
[{
name1 : value1,
name2 : value2
},
{
name1 : value3,
name2 : value4
},
...
]
}
}
Как видите, массив 'results' варьируется от одного ответа к следующему, причем имена 'name1' и 'name2' генерируются пользователем (то есть непредсказуемо). Теперь я могу десериализовать json для извлечения массива 'fields' и его значений, используя эту модель:
namespace WebApplication1.Models
{
public class Field
{
public string name { get; set; }
}
public class Result
{
}
public class JsonResponse
{
public List<Field> fields { get; set; }
public List<Result> results { get; set; }
}
}
Моя проблема:
когда я передаю это в представление, массив 'results' заполняется пустыми 'Objects' (что кажется нормальным, поскольку они не описаны в модели)
results: Array(5)
0: {}
1: {}
2: {}
3: {}
4: {}
Моя цель:
Я хочу иметь возможность добавить правильное описание «результатов» в модель (которое я могу получить из массива «полей») перед передачей его в представление, чтобы все данные были доступны в представлении.
Вещи, которые пытались:
отправка Json в виде строки в представление и синтаксический анализ его с помощью JavaScript, но это не работает, поскольку мы используем зависимый от модели движок для отображения наших данных
с использованием dynamicObj для декодирования json, но я не смог передать его в представление (так как это не модель)
плачет, но это (удивительно) тоже не сработало.
вероятно, кое-что еще, что я сейчас забуду.
Я искал в Интернете в течение нескольких дней решение, и я впадаю в отчаяние, любые идеи приветствуются.
Спасибо!