我正在从 ASP.Net 页面调用 WCF 方法,但是当 WCF 尝试反序列化从 JavaScript 接收的 recordIds 参数时,我收到格式异常。
传递给 WCF 方法的第一个参数需要是 List 类型。我在使用 JSON.stringify 时做错了什么吗?
调用 WCF 的 Javascript 代码
function Update() {
var myarray1 = new Array();
myarray1[0] = 1;
myarray1[1] = 11;
myarray1[2] = 14;
WCFService1.AJAXEnabledService.BatchUpdateRecords(
JSON.stringify({recordIDs: myarray1}) , "ddsd", "gggg",
updateGrid, OnError);
}
上面的 JavaScript 调用的 WCF 方法
[OperationContract]
public bool BatchUpdateRecords(List<int> recordIds, string columnNameToUpdate, string columnValue)
{
DataTable tierIDsTable = new DataTable("RecordIds");
tierIDsTable.Columns.Add(new DataColumn("Integer", typeof(Int32)));
tierIDsTable.PrimaryKey = new DataColumn[] { tierIDsTable.Columns["TierId"] };
foreach (int recordId in recordIds)
{
tierIDsTable.Rows.Add(recordId);
}
return true;
}