Telerik 将集合/列表绑定到kendo mvc网格列

Telerik 将集合/列表绑定到kendo mvc网格列,telerik,kendo-grid,kendo-asp.net-mvc,telerik-mvc,Telerik,Kendo Grid,Kendo Asp.net Mvc,Telerik Mvc,我试图将注释列表绑定到一列,但它不显示任何内容。我正在使用一个内联客户端模板来快速测试它,但运气不好。我知道模型中肯定有注释,但它似乎认为注释是未定义的或空的。下面是我的代码: @{ var grid = Html.Kendo().Grid(Model) .Name("grid") .Columns(columns => { columns.Bound(l => l.Name);

我试图将注释列表绑定到一列,但它不显示任何内容。我正在使用一个内联客户端模板来快速测试它,但运气不好。我知道模型中肯定有注释,但它似乎认为注释是未定义的或空的。下面是我的代码:

    @{
    var grid = Html.Kendo().Grid(Model)
        .Name("grid")
        .Columns(columns =>
        {
            columns.Bound(l => l.Name);
            columns.Bound(l => l.Description);
            columns.Bound(l => l.Comments).ClientTemplate("# if(Comments) { for(var i=0; i<Comments.length; i++) {# #=Comments[i].Comment# #}}# ").Title("Comments");

        })
        .HtmlAttributes(new { style = "height: 850px;" })
        .Sortable()
        .Scrollable(scr => scr.Height(430))
        .Filterable()
        .DataSource(dataSource => dataSource
            .Ajax()
            .ServerOperation(false)
         );
    grid.Render();
}
@{
var grid=Html.Kendo().grid(模型)
.名称(“网格”)
.列(列=>
{
columns.Bound(l=>l.Name);
columns.Bound(l=>l.Description);

columns.Bound(l=>l.Comments).ClientTemplate(“#if(Comments){for(var i=0;i我建议创建一个JavaScript函数,并在客户端模板中调用它。此外,它将更易于调试

function displayComments(data) {
    return $.map(data.Comments, function (e) { return e.Comment; }).join(", ");
}
在您的网格中:

columns.Bound(l => l.Comments).ClientTemplate("#= displayComments(data) #").Title("Comments");

这里的最终目标是什么?您希望您的评论如何显示?您编写模板的方式(因为它不会导致错误)我希望它显示最后一条列表项注释。是否要将所有注释连接为一条注释?是的,使用逗号。当您从中提取数据时,在控制器/服务中连接这些注释应该不容易,只需返回一个简单的字符串值。