2016-03-28 12 views
0

Ich habe eine einfache TreeList, die ich mit einigen Werten füllen möchte. Mein TreeList:"Keine Datensätze zur Anzeige" in Teleriks TreeList

@(Html.Kendo().TreeList<Book>() 
      .Name("BooksTreeList") 
      .Columns(columns => 
      { 
       columns.Add().Field(c => c.BookName); 
       columns.Add().Field(c => c.BookAuthor); 
      }) 
      .Filterable() 
      .Sortable() 
      .DataSource(dataSource => dataSource 
       .Read(read => read.Action("ReadAllBooks", "Catalog")) 
       .ServerOperation(false) 
       .Model(m => 
       { 
        m.Id(c => c.BookId); 
        m.ParentId(c => c.ParentId); 
        m.Expanded(true); 
        m.Field(x => x.BookId); 
        m.Field(x => x.BookAuthor); 
       }) 
      )) 

Und mein Controller-Klasse:

public async Task<IActionResult> ReadAllBooks([DataSourceRequest] DataSourceRequest request) 
{ 
    var result = (await GetAllBooks()) 
     .ToTreeDataSourceResult(
     request, 
     x => x.BookId, 
     x => x.ParentId); 
    return Json(result); 
} 
private async Task<List<BookViewModel>> GetAllBooks() 
{ 
    return await _dbContext.Books.Select(x => new BookViewModel() 
    { 
     BookId = x.CodingId, 
     BookName = x.BookName, 
     BookAuthor = x.BookAuthor, 
     ParentId = x.ParentId 
    }).ToListAsync(); 
} 

Aber wenn ich die Seite bin Eingabe, mein treelist zeigt immer noch „keine Aufzeichnungen angezeigt“ wenn ich Datensätze haben, überprüfte ich es mit Hilfe des Debuggers. Wie soll ich meine TreeList korrekt füllen?

+0

Gibt es eine '.AutoBind (true)' Eigenschaft, die Sie auf dem TreeList einstellen können? – zgood

+0

@zgood Ja, ist es, aber es hat keine Wirkung, ich habe es versucht. –

+0

Selbes Problem, haben Sie die Lösung gefunden? – k4st0r42

Antwort

1

Ich habe denselben Fehler dann verwende ich Guid.Empty für Root-Elemente. Root-Elemente sollten ParentId haben NULL. Versuchen Sie Guid zu benutzen? anstelle von guid, und weisen Sie ihm NULL zu.

Link: http://www.telerik.com/forums/no-records-to-display-959da9677068

+0

Können Sie den relevanten Code von Ihrem Link hier veröffentlichen? Externe Website-Referenzen neigen dazu, im Laufe der Zeit nicht verfügbar zu sein – goto

+0

Scheint, wie es funktioniert, änderte ich meine 'int' ID-Typ zu' string', und dann funktioniert es. –

Verwandte Themen