私のMVCサイトでは、データアクセスにEF 4.1を使用しています。今は製品検索機能を開発しています。フィルタ製品を取得するためのメソッドシグネチャは次のとおりです。Entity Framework効率的なクエリフィルタ
PagedList<Dress> GetDressesPage<TKey>(int page, int dressesPerPage, Func<Dress, bool> selection, Func<Dress, TKey> order, SortDirection direction);
と私は製品を入手する方法は次のとおりです。
dresses = _context.Dresses.Where(selection).OrderBy(order).Skip(page * dressesPerPage).Take(dressesPerPage).ToList();
問題は機能選択です。私は別の条件を追加することでそれを構築できるようにしたいと思います。今は、パラメータの組み合わせごとにいくつかのif節を使って構築していますが、それは複雑すぎます。
フィルタをパラメータとして渡す簡単な方法をご存知ですか?