1
通過自定義對象如何使用$阿賈克斯(..)JSON調用有「由裁判爭論」自定義類/對象ASMX webMethods的?可能嗎?
我的C#代碼 -
public class MyCustomClass{ public int MyProperty; MyCustomClass(){}}
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public Method1(ref MyCustomClass MyCustomObj)
{ MyCustomObj.MyProperty*=2; return MyCustomObj;}
我JS/jQuery代碼 - 如果將WebMethod的說法不被裁判
function myCustomClass(){this.myProperty;}
var myCustomObj = new myCustomClass();
myCustomObj.myProperty = 100;
$.ajax({
type: "POST",
data: "{'myCustomObj': " + JSON.stringify(myCustomObj) + "}",
url: "test.asmx/Method1",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(response) {
var data = response.d;
alert(data.MyProperty);
},
failure: function(msg) {
alert(msg);
}
});
這一切工作正常。 與裁判爭論將WebMethod,即上面提到的簽名有,我得到(使用firebub出現在服務器響應)的服務器錯誤 -
No parameterless constructor defined...
Thx Darin。我已經嘗試過了,它的確如你所說的那樣工作。只是希望 – tubelight 2010-12-10 16:08:05
@tubelight,有什麼不工作?當我測試它工作正常。我能夠在'response.d.MyProperty'中獲得更新後的值。 – 2010-12-10 16:09:06
Thx Darin。我已經嘗試過了,它的確如你所說的那樣工作。只是希望有一些我錯過了,如果照顧,它將與一個由ref參考。 – tubelight 2010-12-10 16:13:42