J'ai eu l'idée astucieuse d'utiliser une variable dynamique pour tester les résultats d'une méthode qui retourne un type anonyme - plus précisément, il retourne un JsonResult, qui ressemble à json ceComment lire les propriétés de types anonymes en utilisant la variable "dynamique"
{ "newData" : [ 1120741.2697475906,
826527.64681837813
],
"oldData" : [ 1849870.2326665826,
1763440.5884212805
],
"timeSteps" : [ 0,
4.8828124999999998e-10
],
"total" : 2
}
Je peux lire le JSonResult qui me donnera le type anonyme. Voici mon code:
var jsonResult = controller.GetChangeData(1) as JsonResult;
dynamic data = jsonResult.Data;
Assert.AreEqual(2, data.total); // This works fine :)
Mais comment obtenir à "newData" par exemple? Ce code ....
var newData = data.newData;
Donne-moi une System.Linq.Enumerable.WhereSelectArrayIterator, mais je ne sais pas quoi faire avec elle pour pouvoir utiliser simplement comme un Arry de doubles.
J'ai essayé de le lancer en double [], mais ça ne marche pas non plus. En aparté, est-ce que je peux facilement vérifier si une propriété est définie sur la dynamique?
Que se passe-t-il lorsque vous essayez cette 'data.newData.ToArray()'? –
var data2 = data.newData.ToArray(); ---> 'object' ne contient pas de définition pour 'ToArray' (essayé aussi avec certains moulages) –