这是网格:
this.Html.Kendo().Grid<Model>()
.Name("grid")
.Filterable()
.ColumnMenu()
.Sortable()
.Groupable()
.Columns(col =>
{
col.Bound(x => x.CompanyId).Visible(false);
col.Template(x => x.CompanyName).ClientTemplate(Html.ActionLink("#= CompanyName #>", "Update", "AppCompany", new { id = "#= CompanyId #", panel = 1 }, null).ToHtmlString()).Width(120);
})
.Pageable(pageable => pageable
.ButtonCount(5)
.Info(true))
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(25)
.Read(read => read.Action("GetData", "EmployeeHistory").Data("sendAntiForgery")))
我正在尝试使用CompanyName和CompanyId来呈现ActionLink。
col.Template(x =&gt; x.CompanyName).ClientTemplate(Html.ActionLink(“#= CompanyName#&gt;”,“更新”,“AppCompany”,新{id =“#= CompanyId #“,panel = 1},null)。ToHtmlString())。宽度(120);
当网格渲染时,我在javascript中收到此错误:
未捕获的ReferenceError:未定义companyid
CompanyId在nav属性中有几个域模型级别,但是我已经使用Deflattening设置了映射,因此Kendo知道在哪里可以找到它进行排序/分组等。
问题是,我怎样才能让它发挥作用?
谢谢!
麦克
答案 0 :(得分:0)
有两点需要注意。我最近更新了剑道,但没有更新css和js文件。我只更新了解决方案中的dll。
其次,VM属性引用了一些可能为null的DM导航属性。我认为这导致Kendo网格无法像我想的那样挂钩我的CompanyId。
我现在使用它同时使用CompanyName和CompanyId