Je suis en train de revenir juste un objet anonyme très simple JSON comme ceci:Parsing réponse JsonResult dynamique de l'API donne « l'objet ne contient pas la définition pour X »
[HttpGet]
public JsonResult GetJson()
{
return Json(new {
id = 1,
child = new
{
id = 12,
name = "woop woop"
}
});
}
, j'ai un test qui vérifient que id = 1
[TestMethod]
public void TestMethod4()
{
var controller = new ValuesController();
dynamic result = controller.GetJson();
Assert.AreEqual(1, result.Value.id);
}
Ce résultat dans:
message: méthode d'essai UnitTestProject1.UnitTest1.TestMethod4 a jeté exception: Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: 'objet' ne contient pas de définition pour 'id'
belle réponse. Sera utile pour les autres aussi –
Le GetJson() n'a pas de .Data, il a .Value. Je n'ai aucun fichier AssemblyInfo.cs. C'est un projet .Net Core 1.1. – ganjan
Ensuite, étiqueter votre question correctement! –