2

linq 表达式有问题。我想从 db 中获取一些按日期时间排序的数据。早期有按字符串字段排序。排序表达式(按字符串):

Expression<Func<Matter, Object>> result = e => e.MatterNumber;
//In debug mode: {e => e.MatterNumber}

工作正常

排序表达式(按日期时间或整数):

Expression<Func<Matter, Object>> result = e => e.Created;
//In debug mode: {{e => Convert(e.Created)}}

这会引发错误:{“无法将类型 'System.Int32' 转换为类型 'System.Object'。LINQ to Entities 仅支持转换实体数据模型原始类型。”}

请帮忙 :)

4

1 回答 1

1

alexei,你可能想看看这个 SO 问题:

实体框架:LINQ to Entities 仅支持转换实体数据模型原始类型

或者这里的这个:

帮助我理解“LINQ to Entities 仅支持转换实体数据模型原始类型”

最后是这样:

Entityframework 4.0 .CreateQuery<T> 和 OrderBy 异常

在 forums.asp.net 上:

http://forums.asp.net/t/1580414.aspx/1

所有 4 都以略有不同的方式处理此问题,但希望对您的方案有所帮助。

于 2012-08-02T11:56:04.130 回答