Cela semble si simple que je dois y penser trop.
TL; DR;
Comment puis-je modifier le code ci-dessous pour renvoyer l'objet json contenu dans la chaîne plutôt qu'une chaîne contenant justement json?
public ActionResult Test()
{
var json_string = "{ success: \"true\" }";
return Json(json_string, JsonRequestBehavior.AllowGet);
}
Ce code renvoie un littéral de chaîne contenant le json:
"{ success: "true" }"
Cependant, je voudrais qu'il retourne le json contenu dans la chaîne:
{ success: "true" }
version légèrement plus longue
J'essaie de prototyper rapidement certains appels d'api externes et je veux juste passer ces résultats via mon "api" comme une fausse réponse pour l'instant. L'objet json n'est pas trivial - quelque chose de l'ordre de 10 000 "lignes" ou 90 Ko. Je ne veux pas créer d'objet (s) fortement typé (s) pour tout le contenu de cette réponse json juste pour que je puisse l'exécuter via un désérialiseur - donc c'est sorti.
La logique de base de mon contrôleur est donc:
Toute aide est grandement appréciée ... l'esprit fond.
L'intérêt de la méthode d'assistance Json()
est de sérialiser en JSON.
Si vous souhaitez retourner du contenu brut, faites-le directement:
return Content(jsonString, "application/json");
public ActionResult Test()
{
return Json(new { success = true }, JsonRequestBehavior.AllowGet);
}