0
在EF,順序按允許使用的列名,例如排序依據(「說明」)的GroupBy條:爲了能夠在列名作爲一個字符串傳遞
我需要能夠做一些用的GroupBy類似的事情時,列類型被稱爲
var groupByExpressionGN2 = GetGroupByExpressionGuidNull<DebtWaiver>("PersonUID");
...
// in the query
.GroupBy(groupByExpression2)
// the Expression function
private static Expression<Func<TEntity,Guid?>> GetGroupByExpressionGuidNull<TEntity>(string property)
{
var item = Expression.Parameter(typeof(TEntity), "gb");
var itemProperty = Expression.PropertyOrField(item, property);
var lambda = Expression.Lambda<Func<TEntity, Guid?>>(itemProperty, item);
return lambda;
}
但我的用戶可以通過它來組由
選擇任一列1
其他職位有解決方案,使我怎樣才能使殲結上述換取基的表達通過
我曾嘗試這樣的:
public static Expression<Func<T, object>> GetMember<T>(string memberName)// where T : EntityObject
{
ParameterExpression pe = Expression.Parameter(typeof(T), "p");
System.Reflection.PropertyInfo pi = typeof(T).GetProperty(memberName);
return (Expression<Func<T, object>>)Expression.Lambda<Func<T, object>>(Expression.Convert(Expression.Property(pe, pi), typeof(object)), pe);
}
但它產生的:P =>轉換(p.PersonUID)
代替:P => p.PersonUID
問候
GregJF