List result = relationDal.SearchRecord( m => m.ECategoryPropertyRelation_Id >= 0, m => m.ECategoryPropertyRelation_Id , pageIndex, pageSize, desc, out recordCount);
List SearchRecord(System.Linq.Expressions.Expression> where, System.Linq.Expressions.Expression> order, int pageIndex, int pageSize, bool desc,out int recordCount);
出错的地方在 order排序 参数,因为m => m.ECategoryPropertyRelation_Id 是int型 不能转换成object 这是错误提示,但是 我换成string的字段去orderby就没错 不知道什么原因。
var Result = PropEntity.CreateQuery(GetNameByT()).Where(where).OrderByDescending(order).Skip(pageIndex * pageSize).Take(pageSize).Select(l => l);
但是 也不能用 m => m.ECategoryPropertyRelation_Id as object 同样报错
无法将类型“System.Int32”强制转换为类型“System.Object”。LINQ to Entities 仅支持强制转换 EDM 基元或枚举类型。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.NotSupportedException: 无法将类型“System.Int32”强制转换为类型“System.Object”。LINQ to Entities 仅支持强制转换 EDM 基元或枚举类型。