Выполнение встроенного редактирования с помощью сетки Kendo с использованием Angular.js, Kendo UI и ASP.NET MVC
Я использую Angular.js, Kendo UI, ASP.NET MVC и C#. У меня есть Kendo Grid, на котором я хотел бы выполнить встроенное редактирование. Когда я нажимаю кнопку редактирования в сетке, обновляю данные в строке, а затем нажимаю кнопку обновления, запрос отправляется на сервер и выполняется по методу моего контроллера MVC, но данные не передаются обратно в запросе. Что мне нужно изменить, чтобы правильно работать встроенное редактирование?
<section ng-app="manageProjectsApp" ng-controller="manageProjectsController as vm">
<div kendo-grid="grid" options="vm.kendoGridOptions"></div>
</section>
<script>
...
vm.kendoGridOptions = {
scrollable: false,
sortable: true,
pageable: false,
editable: 'inline',
columns: [{
field: 'ProjectName',
title: 'Project Name'
}, {
field: 'Active',
title: 'Is Active?'
}, {
command: ['edit']
}],
dataSource: new kendo.data.DataSource({
transport: {
read: {
url: '/manage-projects/get-projects',
type: 'POST',
dataType: 'json',
contentType: 'application/json'
}, update: {
url: '/manage-projects/update-project',
type: 'POST',
dataType: 'json',
contentType: 'application/json'
}, parameterMap: function (options, operation) {
if (operation !== 'read' && options.models) {
return {
models: kendo.stringify(options.models)
};
}
}
}, schema: {
model: {
id: 'ProjectId',
fields: {
ProjectId: {
type: 'number',
editable: false,
nullable: false
},
ProjectName: {
type: 'string',
nullable: false,
validation: {
required: true
}
},
Active: {
type: 'boolean',
nullable: false
}
}
}
}
})
};
</script>
[Route("manage-projects/update-project")]
public JsonResult UpdateProject(ProjectData projectData)
{
// save the data...
return Json(true, JsonRequestBehavior.DenyGet);
}
public class ProjectData
{
public int ProjectId { get; set; }
public string ProjectName { get; set; }
public bool Active { get; set; }
}
1 ответ
Я бы сказал удалить JsonRequestBehavior.DenyGet
из вашего результата Json. Также, если это метод POST, пометьте свой метод с помощью [HttpPost]
приписывать.