【发布时间】:2011-07-15 13:57:57
【问题描述】:
我正在尝试自己处理 gridview 排序。这个我想不通:
protected void gvPackages_Sorting(object sender, GridViewSortEventArgs e)
{
List<Package> pck = new List<Package>();
pck = Session["Packages"] as List<Package>;
var output = (from p in pck
orderby p.Department
select p); <-line that breaks
// var output = pck.OrderBy(x => x.Department).ToList(); <- I've also tried this
gvPackages.DataSource = output;
gvPackages.DataBind();
}
我得到的错误是:
至少一个对象必须实现 IComparable。
包裹是一个实体,所以我不明白我缺少什么。我在网上找到的其他例子反映了我上面的内容,以及它的各种迭代。我错过了什么? 顺便说一句,Department 只是一个作为测试让它发挥作用的领域,它在最终版本中会更加动态。
编辑:再次感谢堆栈,我是个大傻瓜。
【问题讨论】:
-
p,Department 是什么类型?另外,您为什么要新建一个列表,然后从您的会话中获取一个?
标签: c# asp.net linq entity-framework-4 sql-order-by