javascript - jQuery API 调用 Entity Framework API Put 方法

标签 javascript c# jquery asp.net entity-framework

我正在使用 jquery 对 Entity Framework API Controller 进行 API 调用,我正在尝试调用 Put 方法:

[ResponseType(typeof(void))]
public IHttpActionResult PutProfileIDClass(int id, ProfileIDClass profileIDClass)
{
    if (!ModelState.IsValid)
    {
        return BadRequest(ModelState);
    }

    if (id != profileIDClass.id)
    {
        return BadRequest();
    }

    db.Entry(profileIDClass).State = EntityState.Modified;

    try
    {
        db.SaveChanges();
    }
    catch (DbUpdateConcurrencyException)
    {
        if (!ProfileIDClassExists(id))
        {
            return NotFound();
        }
        else
        {
            throw;
        }
    }

    return StatusCode(HttpStatusCode.NoContent);
}

但是当我通过 jQuery 进行 API 调用时,我收到此错误:405(不允许使用方法)

我做错了什么?

这是我的 API 调用

 var data = {
                        id: result.data[0].id,
                        profileID: result.data[0].profileID,
                        taken: 'true'
                    };

                    var json = JSON.stringify(data);

$.ajax({
                        url: '/api/ProfileIDAPI?id=' + result.data[0].id,
                        type: 'PUT',
                        contentType: "application/json; charset=utf-8",
                        data: json,
                        success: function (results) {
                        }
                    });

最佳答案

如果你想执行 PUT 请求,你应该使用 method: 'PUT' 作为 $.ajax 调用的一部分:

$.ajax({
    url: '/api/ProfileIDAPI?id=' + result.data[0].id,
    method: 'PUT',
    contentType: "application/json; charset=utf-8",
    data: json,
    success: function (results) {
    }
});

关于javascript - jQuery API 调用 Entity Framework API Put 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45722185/

相关文章:

javascript - 获取 HTML5 视频的方向

c# - 如何在 Visual Studio 中使用 LINQPad Dump() 扩展方法?

c# - 如何增加 Linq2Entities 中的超时时间?

jquery - 修复 jQuery 动画以将图像滑动到屏幕上

javascript - jqGrid - 将类分配给导航按钮

javascript - jQuery - 每当单击重置时,它不会重置 block

javascript - 如何将 anchor 链接列表转换为选择下拉列表,在选项更改时操作更改选项卡?

javascript - 将变量转换为json路径

javascript - TinyMCE 5.x - 突出显示自定义下拉菜单中的元素

c# - EF 和存储过程返回动态结果