在我的應用程序中,我想通過使用jQuery和Ajax保存數據。我有一個WCF服務。 我想通過使用ajax保存對象列表。我嘗試了以下代碼,但它 不起作用。將對象數組發送到WCF
jQuery代碼:
var listOfObjects=new Array();
//creating list of objects
for(var i=0;i<5;i++)
{ var MyEntity=new Object();
MyEntity.TestId =i;
MyEntity.TestId =i+"testName";
listOfObjects.push(MyEntity);
}
//Saving info
$.ajax({
type: "POST",
async: false,
data: JSON.stringify(listOfObjects),
url: "../ServiceLayer/myService.svc/SaveResults",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function() {
alert("success");
},
error: function() {
alert("Error");
}
});
WCF:
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
public void SaveLabResults(List<MyEntity> myEntity)
{
var lstEntities=myEntity;
}
實體:
[DataContract]
public class MyEntity
{
[DataMember]
public string TestId { get; set; }
[DataMember]
public string TestName { get; set; }
}
以這種方式我試圖發送列表數據。但內部服務器錯誤即將到來。我沒有得到實際上我錯了的地方。是否有任何其他方式將對象列表發送到WCF?
感謝
這個答案真的幫了我很大的忙,但是對於其他人來說,在javascript中有一個錯誤。 var dataToSend ='{「myEntity」:'+ jsonData +'';應該是var dataToSend ='{「myEntity」:'+ jsonList +'}'; – Omiron 2015-03-19 12:07:24