【发布时间】:2014-09-05 11:32:36
【问题描述】:
我有一个动态排序机制,用于执行动态 LINQ OrderBy。这适用于普通字段。
string sortField = "MyField"
var orderByParam = Expression.Parameter(typeof(MyType), "MyType");
var sortExpression = Expression.Lambda<Func<MyType, object>>(Expression.Property(orderByParam, sortField), orderByParam);
但是,当我尝试使用 Nullable 字段(恰好是 DateTime)时,我收到以下错误:
不能使用“System.Nullable`1[System.DateTime]”类型的表达式 对于返回类型“System.Object”
我怎样才能解决这个问题?
【问题讨论】:
-
您是否尝试过使用
Expression.Convert将DateTime?转换为object?