Kendo 网格配置为使用 HttpPost,但向控制器发送 HttpGet 请求

Kendo Grid configured to use HttpPost, but sends a HttpGet request to controller

我有一个 Kendo MVC 网格配置为执行 Post,但是,该请求没有达到我的操作,在探查器中我可以看到它执行了一个 Get 请求。

我是不是哪里弄错了?

查看

<script>
  function additionalData() {
    return { code: '@Session.GetCode()' }
  }
</script>

@(Html.Kendo().Grid<MyModel>()
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Bound(c => c.Type);
        columns.Bound(c => c.Count);
        columns.Bound(c => c.Date);
    })
    .Filterable()
    .Pageable(pageable => pageable
        .PageSizes(true)
        .ButtonCount(10))
    .DataSource(ds => ds
        .Ajax()
        .Read(r => r.Action("GetGridData", "Home").Type(HttpVerbs.Post).Data("additionalData"))
        .PageSize(25)
    )
)

控制器

[HttpPost]
public ActionResult GetGridData([DataSourceRequest]DataSourceRequest request, string code = "")
{
    var result = MyService.GetGridData(regionCode);
    return Json(result.ToDataSourceResult(request));
}

这是在 Internet Explorer 11 调试器中看到的请求,导致 404 错误:

好吧,我设法解决了我的问题,这很愚蠢...

解决方案中的一个 JavaScript 文件包含以下代码:

$(document).on({
    ajaxSend: function(event, jqxhr, settings) {
        if ((settings.type = 'GET')) {

        }
    }
});

只是一个空 ajaxSend 捕获我所有的 AJAX 请求并将它们更改为 GET。有人正在处理这个,忘记删除这个位并签入了。