PredicateBuilder をさらに活用する方法についての簡単な質問です。以下のように動作します。
IQueryable<Product> SearchProducts (params string[] keywords)
{
var predicate = PredicateBuilder.False<Product>();
foreach (string keyword in keywords)
{
string temp = keyword;
predicate = predicate.Or (p => p.Description.Contains (temp));
}
return dataContext.Products.Where (predicate);
}
問題は、任意のメンバーでも検索したい場合、つまり、関数 string[] をキーワードとして渡すだけでなく、fieldToSearch などの検索するフィールドも渡し、p=> p.Description を置き換える場合です。含む (一時)); fieldToSearch による検索を可能にする何かで?
これは可能ですか、それは悪い考えですか?