【发布时间】:2022-03-04 05:35:58
【问题描述】:
我正在尝试将 Kendo Grid 一般用作局部视图。 Kendo 需要定义类型或数据表才能在 razor 视图中实例化网格
@(Html.Kendo().Grid<object>() or @(Html.Kendo().Grid(dataTable)
我的问题是我想将 Grid 用于任何对象,而不是特定对象。
@(Html.Kendo().Grid<object>()
.Name(Model.MetricName)
.Resizable(resizing => resizing.Columns(true))
.Reorderable(reorder => reorder.Columns(true))
.Sortable(sorting => sorting.Enabled(true))
.Pageable(pager => pager.PageSizes(new int[] { 10, 15, 20, 50 }))
.ColumnMenu()
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action(Model.MetricName, "AdHocReport", new { metricId = Model.MetricId }))
)
)
通过使用 Object,我能够动态加载从 ajax .read 方法返回的数据。然而,问题在于日期。它们以 JSON 格式返回。
我试过这个方法,我仍然得到日期的 JSON 字符串表示
Kendo ASP.NET MVC helper Grid generic class
有没有办法从类型的字符串表示中定义网格的类型?所以假设我在 viewModel 上有一个字符串属性,它是网格的类型。我怎么说网格?
我尝试使用反射来实例化类型,但我得到了臭名昭著的“你正在使用像类型这样的变量”
这让我发疯了......任何和所有的帮助将不胜感激
【问题讨论】:
-
恐怕剑道网格和它的 MVC 包装器不是为此而设计的。你必须做类似this
标签: asp.net-mvc generics reflection kendo-ui kendo-grid