我有一個IQueryable和類型T的對象如何構建與通用對象進行比較的Linq表達式樹?
我想要做的IQueryable()在哪裏(O => o.GetProperty(fieldName的)== objectOfTypeT.GetProperty(fieldName的))
所以...
public IQueryable<T> DoWork<T>(string fieldName)
where T : EntityObject
{
...
T objectOfTypeT = ...;
....
return SomeIQueryable<T>().Where(o => o.GetProperty(fieldName) == objectOfTypeT.GetProperty(fieldName));
}
Fyi,GetProperty不是一個有效的函數。我需要一些執行此功能的東西。
我是否有星期五下午腦融化或這是一件複雜的事情嗎?
objectOfTypeT我可以做以下...
var matchToValue = Expression.Lambda(ParameterExpression
.Property(ParameterExpression.Constant(item), "CustomerKey"))
.Compile().DynamicInvoke();
這完美的作品,現在我只是需要第二部分:
回報SomeIQueryable()式(O =>o.GetProperty(fieldName) == matchValue);
完美。正是我需要的。 現在要弄清楚到底發生了什麼:) – JTew 2008-10-24 04:03:08