将`Kendo.Mvc.UI.DataSourceRequest`类型的对象从jquery传递给Mvc Action
目标:我想将一个类型为Kendo.Mvc.UI.DataSourceRequest
的对象Kendo.Mvc.UI.DataSourceRequest
给Mvc操作,这样我就可以根据应用的排序和过滤从数据库中获取结果。
问题/障碍:当对象到达动作时,该对象变为空。
我的控制器行动
public ActionResult Getresults([DataSourceRequest]DataSourceRequest request, Int32 TotalRec) { try { //get data from DAL var result = new DataSourceResult() { Data = List, // Process data (paging and sorting applied) Total = TotalRec }; return Json(result, JsonRequestBehavior.AllowGet); } catch (Exception ex) { throw ex; } }
我的jquery函数
function getData() { var gridDatasource = $('#gridname').data('kendoGrid').dataSource.options; var datatoPost = "{'request': '" + JSON.stringify(new kendo.data.DataSource(gridDatasource)) + "', 'TotalRec': '" + 100 + "'}"; //new kendo.data.DataSource $.ajax({ type: "Post", url: '/Administrator/Getresults/', contentType: "application/json; charset=utf-8", data: datatoPost, dataType: "json", processdata: false, success: function (value) { alert(value.d); }, error: function () { alert("Ajax Error"); } }); }
我尝试过JSON.stringify但仍然相同,也像var datatoPost = "{'request': '" + JSON.stringify(gridDatasource) + "', 'TotalRec': '" + 100 + "'}";
我需要在这里解析我的对象还是可以转换它的类型。
对我来说,工作如下:
$("#excel").kendoButton({ click: function (event) { var data = grid.dataSource._params(); var prepared = grid.dataSource.transport.parameterMap(data); $.post("/Root/AnotherControllerMethod", prepared, function (data, status, xhr) { console.log("Ok!"); } ); } });
- 如何从VS2012中的简单Nuget安装中解决MVC4 Twitter Bootstrap项目失败?
- 如何使用服务器端将数据发布到MVC4中的外部URL
- AssemblyBinding BindingRedirect不适用于带有T4MVCExtensions的MVC4应用程序
- ASP.Net Identity 2 – 来自OAuthAuthorizationServerProvider的自定义响应
- 如何使用c#将byte 转换为HttpPostedFileBase
- Unity 3和错误“类型名称或别名”xxxxx“无法解析。 请检查您的配置文件并validation此类型名称。“
- 何时调用SaveChanges
- TextBoxFor值在post后没有更新
- MVC4 Ajax.BeginForm没有替换UpdateTargetId