J'ai une méthode C # .NET comme indiqué ci-dessous
$.ajax({ type: 'GET', url: "test.aspx", //In test.aspx pageload calling jsonTest() dataType: 'json', success: function (data) { alert(data); }, error: function (data) { alert("In error"); } });
4 Réponses :
JSON n'est que des données de chaîne. C'est ainsi que cette chaîne est interprétée. Donc, le fait qu'il retourne une chaîne est correct. Vous avez mentionné ASP.NET. Utilisez-vous des webforms ASP.NET et recherchez un moyen de retourner cette JSON à l'avant? P>
Je pense que tu voulais dire un commentaire
Il n'y a rien appelé objet JSON. La méthode code> SerializeObject code> renvoie une chaîne car JSON n'est rien de plus qu'une valeur de chaîne qui suit des règles spécifiques.
Pour retourner JSON au navigateur Tout ce que vous avez à faire est: P>
Response.ContentType = "application/json; charset=utf-8"; Response.Write(jsonTest()); Response.End();
Si ASP.NET,
string output = JsonConvert.SerializeObject(list); Response.Clear(); Response.ContentType = "application/json; charset=utf-8"; Response.Write(output); Response.End();
Son amende fonctionnant si je n'utilise pas deataType: 'Json' à Ajax. Sinon, sa alerte montrant ("erreur");
Je vais supposer que vous essayez de créer un ASP.NET sera auto-Serialize à JSON pour Le résultat que votre appel JS voit serait quelque chose comme: < / p> pas besoin de déconner directement w / la classe jsonerializer directement. p> Assurez-vous également que vos en-têtes de demande sont correctement définis: P> Webmethod code> pour la consommation par un appel JavaScript XHR ou SIMILIAR:
POST CODE> Demandes uniquement (à l'aide de ASMX ou appelé "Méthodes de page"). Wcf et webapi ne nécessitent pas la méthode
post code>, mais nécessitent une certaine configuration. P>
Contenu-Accepter: Application / JSON; CHRSTE = UTF8 CODE> P> P>
Voulez-vous que cela ressemble à celui de la consommation de serveur ou du côté client? Qu'essayez-vous d'accomplir / faire avec le résultat?
Si vous parlez à la création d'une ASP WebMethod, vous retournez le type de chaîne et utilisez le sérialisateur JSON pour convertir l'objet.
Stackoverflow.com/Questtions/2361380/...
Est-ce censé être une webmethod? Si tel est le cas, faites simplement votre type de retour
list code> et il sera automatiquement sérialisé sur JSON (pas une "chaîne JSON" évasée)