2009-08-04 7 views
1

J'ai un webmethod qui retourne une Hashtable par un appel ajax jQuery le long des lignes de:.net retour Hashtable d'une demande de paiement ajax JQuery

$.ajax({ 
    type: "POST", 
    url: webMethod, 
    data: {} 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function(json){ 
     **alert(json.d);** 
    }, 
    error: function(XMLHttpRequest, textStatus, errorThrown) { 
     alert(textStatus); 
    } 
}); 

Mon problème est, quand je déploie au JSON du serveur. d est indéfini, mais json est la hashtable. Sur ma boîte locale, son opposé json.d est l'objet hastable et non l'objet json. Je l'ai retrouvé à un point où je peux voir que la chaîne JSON retournée est parfois {d: {}} et sur le serveur son {}.

Est-ce que quelqu'un sait pourquoi?

+0

Veuillez montrer le code côté serveur. Veuillez également indiquer quelle version de .NET vous utilisez. –

Répondre

0

Il s'avère que cela dépend de la version du framework .net que vous utilisez. Si vous utilisez 3.5, ils ajoutent la variable Json.d comme mesure de sécurité. Si vous utilisez framework 3.0, il n'apparaît pas.

Questions connexes