2016-06-24 7 views
0

Ich schicke einen Anruf wie folgt:WCF-Dienst nicht Parsing JSONP Parameter richtig

$.ajax({ 
      url: myURL+functionName, 
      contentType: "application/json; charset=utf-8", //also tried application/javascript 
      cache: false, 
      dataType: "jsonp", 
      data: parameter, 
      success:function(response){ 
       alert("great success!"); 
      }, 
      error:function(error) {alert("boo-urns");} 

was in Ordnung ist und alles sieht aus wie es sollte. Der Parameter Objekt kommt mit einem Wert wie so:

{ac:"a8d8e6ef-5907-4978-11cf-39add52b996c", 
date:"20160626", 
deviceId:"W-eXXX9680-13X3-9317-f1b3-eXXXXe50", 
komponenten:Array[5], 
menu_kf_nr:1, 
mz_nr:"3", 
pt_kf_nr:1, 
pt_nr:"311701", 
sessionId:"b22bXXX6-20XX-4XXX-9ed6-0dXXb297"} 

Hier ist die serverseitige Methode:

public bool functionName(string ac, string date, string deviceId, List<komponenten> komponenten, int? menu_kf_nr, string mz_nr, int pt_kf_nr, string pt_nr, string sessionId) { 
    //do stuff with the data 

} 

Und dann auf der Server-Seite, obwohl mein params nur kommen, wie folgt:

ac "a8d8e6ef-5907-4978-11cf-39add52b996c" string 
date "20160626" string 
deviceId null string 
komponenten null System.Collections.Generic.List<kompnenten> 
menu_kf_nr null int? 
mz_nr "3" string 
pt_kf_nr 1 int 
pt_nr "311701" string 
sessionId null string 

Kann mir jemand sagen, wo ich suchen muss, um die Nullen zu beseitigen?

Vielen Dank im Voraus

Antwort

0

Sie sollten Ihre Parameter individuell in dem Ajax-Aufruf, auch empfangen werden, die C# Seite wird wahrscheinlich erwartet JSON-Daten zu übergeben.

Schauen Sie sich here an, um zu sehen, wie mehrere Parameter in einem aJax-Aufruf übergeben werden.

Notiere die zweite der akzeptierte Antwort teilweise unter Verwendung JSON.Stringify

+0

prost, aber Ihr Link ist gebrochen – rory

+1

jetzt funktionieren sollte. Ich habe bemerkt, dass der Redakteur das die ganze Zeit macht ... – pay