我正在爲nHibernate動態構建linq查詢。如何將LambdaExpression轉換爲鍵入的表達式<Func<T, T>>
由於依賴關係,我想在以後的時間輸入/檢索類型化表達式,但到目前爲止我一直沒有成功。
這不是工作(中投應該在別處發生):
var funcType = typeof (Func<,>).MakeGenericType(entityType, typeof (bool));
var typedExpression = (Func<T, bool>)Expression.Lambda(funcType, itemPredicate, parameter); //Fails
這是工作:
var typedExpression = Expression.Lambda<Func<T, bool>>(itemPredicate, parameter);
是否有可能得到「封裝」從LambdaExpression輸入表達式?
也許你正在尋找typedExpression.Compile() – jure 2013-04-25 11:07:04
我需要使用表達式作爲一個IQueryable與我的ORM映射器,因此它不能被編譯。 – Larantz 2013-04-26 07:52:53