2016-06-27 6 views
0

Angled.js、Kendo UI、ASP.NET MVC、C#を使用しています。インライン編集をしたい剣道グリッドがあります。グリッド内の編集ボタンをクリックして行のデータを更新し、更新ボタンをクリックすると、リクエストがサーバーに送信され、MVCコントローラメソッドが表示されますが、リクエストに返されるデータはありません。インライン編集が正しく機能するためには、何を変更する必要がありますか?Angled.js、Kendo UI、ASP.NET 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; } 
} 

答えて

0

あなたのJsonの結果からJsonRequestBehavior.DenyGetを削除します。また、POSTメソッドの場合は、[HttpPost]属性でメソッドをマークします。

関連する問題