У меня была хитрое представление об использовании динамической переменной для проверки результатов метода, который возвращает анонимный тип, а точнее, возвращает JsonResult, который, как выглядит json этоКак читать свойства анонимных типов с использованием «динамической» переменной
{ "newData" : [ 1120741.2697475906,
826527.64681837813
],
"oldData" : [ 1849870.2326665826,
1763440.5884212805
],
"timeSteps" : [ 0,
4.8828124999999998e-10
],
"total" : 2
}
Я могу прочитать JSonResult, который даст мне анонимный тип. Вот мой код:
var jsonResult = controller.GetChangeData(1) as JsonResult;
dynamic data = jsonResult.Data;
Assert.AreEqual(2, data.total); // This works fine :)
Но как мне попасть, например, в «newData»? Этот код ....
var newData = data.newData;
дает мне System.Linq.Enumerable.WhereSelectArrayIterator, но я не знаю, что делать с ним, чтобы иметь возможность просто использовать его в качестве Arry двойников.
Я пробовал использовать его как двойной [], но он тоже не работает.
Как в стороне, могу ли я легко проверить, определено ли свойство в динамике?
Что происходит, когда вы пытаетесь использовать этот 'data.newData.ToArray()'? –
var data2 = data.newData.ToArray(); ---> «object» не содержит определения для «ToArray» (тоже с некоторыми приведениями) –