使用LINQ选择匿名类型的属性会引发异常

时间:2017-02-05 17:50:44

标签: c# entity-framework linq linq-to-entities

我的Linq查询(我想获得按订单数量排序的项目列表)

var x = context.Items.Include("Item_qualities").Join(
               context.Orders,
               i => i.Id,
               o => o.Item_id,
               (i, o) => new { i, o }
               )
               .GroupBy(e => new { e.i })
               .Select(w => new { w.Key.i, c = w.Count() })
               .OrderByDescending(y => y.c)
               .ToList().Select(u=>u.i);

最后一部分Select(u=>u.i)抛出异常

  

无法比较或排序text,ntext和image数据类型,   除了使用IS NULL或LIKE运算符时。

1 个答案:

答案 0 :(得分:0)

这个错误很明显:

自SQL Server 2005起不推荐使用的文本数据类型不适合进行比较,因此无法对其进行排序。 image 数据类型也是如此。阅读this了解更多详情。换句话说,数据库引擎无法根据您指定的列进行排序。