i ont un contrôleur asp.net que JSON comme les résultatsasp.net mvc délivrer en sortie JSON avec des barres obliques inverses (échappement), malgré de nombreuses tentatives pour filtrer
une partie de celui-ci est ici
returnString += string.Format(@"{{""filename"":""{0}"",""line"":[", file.Filename);
ce i s'est retourné ceci:
"{\"DPI\":\"66.8213457076566\",\"width\":\"563.341067\",\"editable\":\"True\",\"pricecat\":\"6\",\"numpages\":\"2\",\"height\":\"400\",\"page\":[{\"filename\":\"999_9_1.jpg\",\"line\":[]},{\"filename\":\"999_9_2.jpg\",\"line\":[]}]]"
i ont essayé de revenir avec les méthodes suivantes:
return Json(returnString);
return Json(returnString.Replace("\\","");
retour Json sérialisera ma chaîne à une chaîne jSon, ce que je sais, mais il aime échapper pour une raison quelconque, comment puis-je me débarrasser d'elle ????
pour plus d'informations voici comment je l'appelle avec jQuery:
$.ajax({
url:"/Products/LoadArtworkToJSon",
type:"POST",
dataType: "json",
async: false,
data:{prodid: prodid },
success: function(data){
sessvars.myData = data;
measurements = sessvars.myData;
$("#loading").remove();
//empty the canvas and create a new one with correct data, always start on page 0;
$("#movements").remove();
$("#canvas").append("<div id=\"movements\" style=\"width:" + measurements.width + "px; height:"
+ Math.round(measurements.height)
+ "px; display:block; border:1px solid black; background:url(/Content/products/"
+ measurements.page[0].filename + ") no-repeat;\"></div>");
votre aide est très appréciée
grâce
je regarde dans les résultats de firebug après que j'obtienne l'erreur que mesures.page est indéfini – davethecoder
dans le firebug sur la réponse je ne pense pas que devrait incs backslashes aussi devrait-il ???? si je cours d'alerte (JSONstring.make (mesures)); je reçois double // donc ils doivent défo être là en quelque sorte ???????? – davethecoder
S'ils sont dans l'alerte affichant des barres obliques inverses, alors vous doublez définitivement les citations. Ma conjecture est que Json (blah) attend un objet, pas une chaîne, donc il échappe mal à la chaîne. Essayez comme édité ci-dessus. – jvenema