Columns.Bound无法解析符号';绑定';
本文关键字:绑定 符号 Bound Columns | 更新日期: 2023-09-27 18:24:28
我有一个网页,它有一些Kendo控件,如下拉菜单和按钮,可以成功工作,但添加网格会导致问题。
@(Html.Kendo().Grid(Model).Name("grid").Columns(columns =>
{
columns.Bound(stuff => stuff.FirstColumn).Width(200);
columns.Bound(stuff => stuff.SecondColumn).Width(200);
columns.Bound(stuff => stuff.HiddenColumn).Hidden;
columns.Bound(stuff => stuff.ThirdVisibleColumn).Width(200);
})
.Pagable()
.Sortable()
)
在设计时,.Bound方法显示为带有工具提示的红色字体无法解析符号"Bound",Stuff的属性(例如.FirstColumn)也显示为带有类似消息的红色。
编译错误
描述:编译服务此请求所需的资源时出错。请查看以下特定错误的详细信息,并适当地修改源代码
编译器错误消息:CS1977:如果不首先将lambda表达式强制转换为委托或表达式树类型,就无法将其用作动态调度操作的参数
这个问题首先出现在另一个项目中,所以作为一个测试,我创建了一个新的Telerik项目,并只添加了复制问题所需的最小值,希望新创建的项目能突出原来的项目失败的地方。没有这样的运气。
提前谢谢。
如果你像这样传递模型,它需要是IEnumerable(或类似的)类型。
这对我有效:
@model IEnumerable<SomeModel>
@(Html.Kendo().Grid(Model)
.Name("grid")
.Columns(columns =>
{
columns.Bound(stuff => stuff.FirstColumn).Width(200);
columns.Bound(stuff => stuff.SecondColumn).Width(200);
columns.Bound(stuff => stuff.HiddenColumn).Hidden();
columns.Bound(stuff => stuff.ThirdVisibleColumn).Width(200);
})
.Pageable()
.Sortable()
)
您还可以传递以下模型:
@(Html.Kendo().Grid<SomeModel>().Name("grid")
.DataSource(src => src.Ajax().Read(read => read.Action("Action", "Controller"))
.Columns(col =>
{
col.Bound(e => e.Name);
col.Bound(e => e.Age);
col.Bound(e => e.ID);
})
.Selectable()
.Scrollable()
)