Telerik树列表始终为空

时间:2019-05-07 10:15:18

标签: asp.net-core telerik kendo-treelist

我创建了一个项目,我需要放置一个树形视图以使用Guid字符串(父级为null的ParentId)来处理网格的父级和子级元素。我创建了一个父亲和一个孩子,但该页面未在网格中加载任何记录。我想念什么吗?

附件是在我的页面中查看的网格以及从数据源接收的模型

这是模特

public class ProjectTaskViewModel
{
    public string IdTask { get; set; }
    public string FatherId { get; set; }
    public string TaskTitle { get; set; }
}

视图:

@(Html.Kendo().TreeList<Models.ProjectTaskViewModel>()
        .Name("treelist")
        .Columns(columns =>
        {
            columns.Add().Field(p => p.IdTask).Title(" ").Filterable(false).Sortable(false).Width("105px").Template("#=customformatter(Id)#");
            columns.Add().Field(p => p.TaskTitle).Title("Nsme");
        })
        .Pageable(p => p.Refresh(true).PageSize(20).PageSizes(new int[] { 20, 50, 100 }))
        .Sortable()
        .Filterable()
        .DataSource(dataSource => dataSource
            .Read(read => read.Action("TreeViewDataSource", "ProjectTask").Data("CustomData")) //Function that contains correctly the IdProject param
            .ServerOperation(false)
            .Model(m => {
                m.Id<string>(p => p.IdTask);               
                m.ParentId<string>(p => p.FatherId);
                m.Field(p => p.TaskTitle);
                m.Field<string>(p => p.FatherId);
            })
        )
    )

最后是TreeViewDataSource:

public JsonResult TreeViewDataSource([DataSourceRequest]DataSourceRequest request, string IdProject)
{
    var temp = _db.ProjectTasks.Where(o => o.IdProject == IdProject).Select(o => new ProjectTaskViewModel
    {
        FatherId = o.ParentId,
        IdTask = o.Id,
        TaskTitle = o.Title
    });
     var result = temp.ToTreeDataSourceResult(request, o => o.IdTask, o => o.FatherId, o => o);
     return Json(result);
}

这是从数据源收到的模型的屏幕截图 enter image description here

我看到there已经是对类似问题的答复,但是我不知道为什么它不能正常工作。

谢谢。

0 个答案:

没有答案