Anybody know how to work with Kendo TreeView and SignalR? Because I have this:
@(Html.Kendo().TreeView().Name("vehicleList")
.DataTextField("Name")
.DataSource(ds => ds.SignalR()
.AutoSync(true)
.Transport(tr => tr.Promise("hubStart")
.Hub("hub")
.Client(c => c.Read("read2"))
.Server(s => s.Read("read2"))
)
.Schema(s => s.Model(m => {
m.Id("id");
m.Field("Name", typeof(string));
m.Children("Children");
m.HasChildren("HasChildren");
}))
)
)
But when try expand or select item I have error that treeview require server.create
method. But I try only expand or select tree
My hub looks like:
var vehicle = allVehicle.Where(d => d.ParentId == null || d.ParentId == Guid.Empty)
.Select(v => new VehicleTree() {
Name = v.Name,
Id = v.Id,
hasChildren = false
}).ToList();
var groups = allVehicle.Where(d => d.ParentId != Guid.Empty).Select(g => new VehicleTree() {
Id = g.ParentId,
Name = g.GroupName,
hasChildren = true
}).Distinct().ToList();
foreach(var g in groups) {
g.Children = allVehicle.Where(v => v.ParentId == g.Id).Select(v => new VehicleTree() {
Name = v.Name,
Id = v.Id,
hasChildren = false
}).ToList();
}
var result = new List<VehicleTree>();
result.AddRange(groups);
result.AddRange(vehicle);
return result;