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;
}