【发布时间】:2017-04-11 13:52:50
【问题描述】:
我正在准备样本报告屏幕, 用户将从下拉框中选择报告并填写一些特殊选项。 单击搜索按钮(Sorgula)后,它会从 ReportController 中触发读取操作。
这个控制器以 Json 的形式返回列表(无论你想要什么)
现在这正在工作。 但是 Telerik Grid 添加了我从未添加到结果中的不同列。
我定义的网格上没有列。因为列必须根据json结果出现
现在我的网格创建查询
$("#ReportResult").kendoGrid({
selectable: "multiple cell",
allowCopy: true,
height: 550,
groupable: true,
pageable: true,
sortable: true,
pageable: {
input: true,
numeric: false
},
dataSource: new kendo.data.GanttDataSource({
pageSize: 20,
serverPaging: true,
serverFiltering: true,
serverSorting: true,
transport: {
read: {
url: '<%= Url.Action("Read", "Report") %>',
dataType: "json",
type: "POST",
data: {
ReportID: 1,
OrganizationID: 2,
StartDate: "22",
EndDate: "11",
UserName:"dds",
},
},
},
}),
});
读取动作
public ActionResult Read([DataSourceRequest] DataSourceRequest request, int ReportID,int OrganizationID,string StartDate,string EndDate,string UserName)
{
List<COnsumersReport> lis = new List<COnsumersReport>();
for (int i = 0; i < 99; i++)
{
COnsumersReport cc = new COnsumersReport();
cc.ID = i;
cc.name = "semih";
cc.sirname = "Yıldız";
cc.Borc =i*20.5;
lis.Add(cc);
}
return Json(lis);
}
结果。如您所见,我没有定义 id,parentId,orderId,Title vs。
public class COnsumersReport
{
public int ID { get; set; }
public string name { get; set; }
public string sirname { get; set; }
public double Borc { get; set; }
}
【问题讨论】:
-
谢谢@PierreLebon,但这不适合我。因为我不知道哪些列名将来自数据源。此网格应显示所有对象列表
-
CONsumersReport 对象是否具有所有这些额外属性?如果是这样,那么您在调用 new CONsumersReport() 时正在定义它们。使用其他对象绑定到仅包含所需字段的对象。
-
@Seano666 消费者报告只有 4 列
-
你能发布你在视图中声明你的网格的代码吗?这是您遗漏的重要组成部分。 #ReportResult
标签: jquery gridview dynamic telerik advanced-custom-fields