我有应用滤镜,然后将以下资料库的方法顺序集合:通用库方法引发转换错误
public IQueryable<TE> SelectAll(Expression<Func<TE, bool>> predicate,
Expression<Func<TE, object>> sortExpression, bool orderDescending = false)
{
var list = _ctx.CreateQuery<TE>("[" + typeof(TE).Name + "]")
.AsExpandable().Where(predicate);
return orderDescending
? list.OrderByDescending(sortExpression)
: list.OrderBy(sortExpression);
}
的地方谓语工作正常,但是当如果应用排序依据,我们得到以下错误:
无法将类型'System.Int32'转换为键入'System.Object'。 LINQ to Entities仅支持投射EDM基元或枚举类型。
编辑:这是调用代码:
var documentos = SelectAll(d => serviciosId.Contains(d.ServicioId) && d.TipoSociedadId == tipoSociedadId, d => d.Grupo);
'd.Grupo'是什么类型? – ecampver 2013-03-18 18:37:43
@ e.campver Int32 – amhed 2013-03-18 19:53:37