Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在剑道网格中获取异常_Jquery_Asp.net Mvc_Kendo Ui_Kendo Grid - Fatal编程技术网

Jquery 在剑道网格中获取异常

Jquery 在剑道网格中获取异常,jquery,asp.net-mvc,kendo-ui,kendo-grid,Jquery,Asp.net Mvc,Kendo Ui,Kendo Grid,我得到一个例外: {“至少一个对象必须实现IComparable.” 当我在剑道网格中按特定列排序时 @(Html.Kendo().Grid((IEnumerable<xxy>)(Model)) .Name("technologyGrid") columns.Bound(skills => skills.Employees).Title("Number of Tagged Employees").Template( @<label

我得到一个例外:

{“至少一个对象必须实现IComparable.”

当我在剑道网格中按特定列排序时

     @(Html.Kendo().Grid((IEnumerable<xxy>)(Model))
 .Name("technologyGrid")
      columns.Bound(skills => skills.Employees).Title("Number of Tagged Employees").Template(
         @<label>
             @{
                 var total = item.Employees.Count();
                 @Html.Label(total.ToString())
             }
         </label>).Width(50);
       columns.Bound(skills => skills.Projects).Title("Number of Tagged Projects").Template(
         @<label>
             @{
                 var total = item.Projects.Count();
                 @Html.Label(total.ToString())
             }
         </label>).Width(50);

   })
      .Scrollable()
      .Pageable(pageable => pageable)
      .Refresh(true)
      .PageSizes(true)
      .ButtonCount(5))
      .Sortable(sortable => sortable.AllowUnsort(false))
@(Html.Kendo().Grid((IEnumerable)(Model))
.名称(“技术网格”)
columns.Bound(skills=>skills.Employees).Title(“标记的员工数”).Template(
@
@{
var total=item.Employees.Count();
@Html.Label(total.ToString())
}
).宽度(50);
columns.Bound(skills=>skills.Projects).Title(“标记项目的数量”).Template(
@
@{
var total=item.Projects.Count();
@Html.Label(total.ToString())
}
).宽度(50);
})
.Scrollable()
.Pageable(Pageable=>Pageable)
.刷新(真)
.页面大小(真)
.按钮计数(5))
.Sortable(Sortable=>Sortable.alloworst(false))

如何解决此异常?

排序时,将列绑定到的值将成为列的默认排序值。您的员工和项目需要一个比较器函数,或者您需要找到另一种方式对列(名称或id)进行排序。不需要实现IComparable的简单类型(string、int等)会自动排序

将计算计数或排序顺序字段添加到技能列表中会起作用:

columns.Bound(skills => skills.EmployeeCount)
columns.Bound(skills => skills.ProjectCount)

我还没有尝试过这个,但是,它可能会起作用:

columns.Bound(skills => skills.Employees.Count)