0

我用剑道网络的开源版本,我目前的版本是剑道UI的Web 我使用剑道UI和asp.net的MVC 4 我的剑道电网有这样的JS代码剑道电网和asp.net网页API

API控制器
<script> 
    $(document).ready(function() { 
     $("#grid").kendoGrid({ 
      dataSource: { 
       type: "odata", 
       serverSorting: true, 
       serverFiltering: true, 
       serverPaging: true, 
       transport: { 
        read: { 
         url: "api/Usermanage", 
         dataType: "json", 
         contentType: "application/json" 
        }, 
        create: { 
         url: "/api/Usermanage", 
         dataType: "json", 
         type: "POST" 
        }, 
        update: { 
         url: function (UserModel) { 
          return "/api/articles/" + UserModel.ID 
         }, 
         dataType: "json", 
         type: "PUT" 
        }, 
        destroy: { 
        url: function (UserModel) { 
         return "/api/Usermanage/" + UserModel.ID 
        }, 
        dataType: "json", 
        contentType: "application/json", 
        type: "DELETE" 
        }, 

        update: { 
         url: function (UserModel) { 
          return "/api/Usermanage/" + UserModel.ID 
         }, 
         dataType: "json", 
         type: "PUT" 
        }, 
         parameterMap: function(options, operation) { 
          if (operation !== "read" && options.models) { 
           return {models: kendo.stringify(options.models)}; 
          } 
         } 


       }, 
       schema: { 
        data: function (response) { 
         if (response.value !== undefined) 
          return response.value; 
         else { 
          delete response["odata.metadata"]; 
          return response; 
         } 
        }, 
        total: function (response) { 
         return response['odata.count']; 
        }, 

        model: { 
         fields: { 
          ID:"ID", 
          ID: { editable: false }, 
          Name: { type: "string", editable: true, nullable: false, validation: { required: true } }, 
          Roles: { type: "string" } 
         } 
        } 
       } 
      }, 
      height: 430, 
      scrollable: { 
       virtual: true 
      }, 
      toolbar: ["create"], 
      editable: "popup", 
      sortable: true, 
      columns: [ 
       { field: "Name", title: "UserName", width: 110 }, 
       { field: "Roles", title: "Role", width: 160 }, 
       { command: ["edit", "destroy"], title: " ", width: "160px" } 
      ] 
     }); 
    }); 
     </script>   
         }, 

方法是:

// DELETE api/usermanage/5 
     public void Delete(int id) 
     { 
      var name = db.UserProfiles.Find(id); 
      Membership.DeleteUser(name.UserName,true); 
     } 

但它没有工作,我做错了什么?

+0

1.你应该使用Kendo的ASP.Net MVC Wrapper,它使得代码更加清晰和易于理解。 2. js的完整代码块? – AntSpiteri

+0

为js添加了完整的块 – Egor

回答

-1

您的所有命令的网址都指向URL:“/ API/Usermanage /”

这必须具体到控制器内的行动,以便在这种情况下,它应该是:

url: function (UserModel) { 
    return "/api/Usermanage/Delete/" + UserModel.ID 
}, 
+0

我试图做到这一点,但它不能帮助 – Egor

+0

在铬debagger,我可以看到它的后不删除请求,我不知道为什么 – Egor

+0

其他命令的工作? – AntSpiteri