asp.net - 在 Kendo 网格读取操作中发送附加参数

标签 asp.net asp.net-mvc kendo-ui kendo-grid kendo-asp.net-mvc

我有一个剑道网格,如下。

@(Html.Kendo().Grid<RevenueModel>()
     .Name("WeeklyRevenue")
     .Resizable(resizing => resizing.Columns(true))
     .Columns(columns =>
         {
            columns.Bound(p => p.Number).Width(100);
            columns.Bound(p => p.Type).Width(100);
            columns.Bound(p => p.Week1).Format("{0:c}");
            columns.Bound(p => p.Week2).Format("{0:c}");
            columns.Bound(p => p.Week3).Format("{0:c}");
            columns.Bound(p => p.Week4).Format("{0:c}");
            columns.Bound(p => p.Week5).Format("{0:c}");
            columns.Bound(p => p.TotalRevenue).Format("{0:c}");
         })
     .Scrollable()
     .Events(events => events.Change("onChange").DataBound("onDataBound"))
     .DataSource(dataSource => dataSource.Ajax().Read(read => read.Action("WeeklyRevenue", "Home")).ServerOperation(false))
     .Pageable(pager => pager.Refresh(true))
 )

这是我的 Controller 代码

public ActionResult WeeklyRevenue([DataSourceRequest]DataSourceRequest request)
        {
            ...
            DataSourceResult result = res.ToDataSourceResult(request);
            return Json(result, JsonRequestBehavior.AllowGet);
        }

效果很好。但我想在 Grid 读取数据时发送额外的数据,如下所示;

public ActionResult WeeklyRevenue([DataSourceRequest]DataSourceRequest request, string AdditionalParam)

我找不到任何解决方案来执行此操作。提前致谢。

最佳答案

如果服务器端已知附加数据,您应该使用接受路由值的 Action 方法的重载:

.DataSource(dataSource => dataSource.Server()
   .Read(read => read.Action("Read", "Home", 
        new { AdditionalParam = ViewData["AdditionalParam"] }))
)

如果只有客户端知道此附加数据,您应该使用 Data 方法:

.DataSource(dataSource => dataSource.Ajax()
   .Read(read => read
      .Action("Read", "Home")
      .Data("additionalData")
  )
)
<script>
 function additionalData() {
     return {
         AdditionalParam: $("#search").val()
     };
 }
</script>

关于asp.net - 在 Kendo 网格读取操作中发送附加参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23222867/

相关文章:

ASP.NET 核心 2.1 session

asp.net-mvc - 覆盖默认身份表名称

asp.net - 如何在 ASP.NET Identity 中定义不同的用户类型?

javascript - Kendo UI Tabstrip : Tab should render a grid after clicking on a button inside that tab

c# - Windows 7 IIS 7.5 与 System.ComponentModel.Browsable 属性的奇怪行为

asp.net - 自定义图像的 http 错误页面?

c# - .NET Core 中的多个 Google 身份验证范围取决于 Controller

javascript - Angular 2 - Kendo UI 日历未正确渲染

javascript - 如何向 Textarea Kendo 添加可关闭的文本标签 | jQuery

javascript - 包含 pdf 文件的页面显示 5 分钟后重定向到另一个页面