アプリケーションでWEBAPIとともにMVCを使用しています。ポップアップ編集で剣道グリッドを使用しています。データをフェッチしてグリッドをバインドすることができます。しかし、行を編集または削除しようとすると問題が発生します。parameterMapの操作パラメーター:function(options、operation)はcreateとして表示され続け、更新と破棄の場合は同じcreateトランスポートURLがヒットします。
このコードで何が間違っているのですか?
dataSource = new kendo.data.DataSource({
type: "json",
transport: {
read: {
cache: false,
url: GETUSER_API_URL,
contentType: "application/json; charset=utf-8",
datatype: "json"
},
create: {
cache: false,
url: UPDATEUSER_API_URL,
contentType: "application/json; charset=utf-8",
type: "POST",
datatype: "json"
},
update: {
cache: false,
url: UPDATEUSER_API_URL,
contentType: "application/json; charset=utf-8",
type: "POST",
datatype: "json"
},
destroy: {
url: DELETEUSER_API_URL,
contentType: "application/json; charset=utf-8",
type: "POST",
datatype: "json"
},
parameterMap: function (options, operation) {
debugger;
if (operation == "update" || operation == "create") {
if (options.models[0].UserProfileId == null && operation != "destroy") {
operation = "create";
}
else {
operation = "update";
}
return kendo.stringify({ models: options.models[0] });
}
else if (operation == "destroy") {
return kendo.stringify({ models: options.models[0] });
}
}
},
batch: true,
pageSize: 10,
schema: {
model: {
id: "UserProfileID",
fields: {
FirstName: { validation: { required: true } },
LastName: { validation: { required: true } },
EmailId: { nullable: false, validation: { required: true } }
}
}
}
});
さらに、行データをAPIに送り返すにはどうすればよいですか?