2つのGUIDコレクションがあります。
List<Guid> statuses;
List<Guid> priorities;
次のクエリを作成する方法:
var result = context.Activity.Where(a =>
(a.StatusID == statuses[0] || a.StatusID == statuses[1] || ... || a.StatusID == statuses[n]) &&
(a.PriorityID == priorities[0] || a.PriorityID == priorities[1] || ... || a.PriorityID == priorities[m]))
コレクションは空である可能性があり、この場合、適切な「AND」条件を追加しないでください。そのような動的クエリを実行するにはどうすればよいですか?
アップデート
うーん、私はこのようなものが必要だと想像してください:
List<Func<Activity, bool>> conds = new List<Func<Activity, bool>>();
var result = context.Activity.Where(conds[0] || (conds[1] && conds[2]))
どうやってするか?