LINQを使用したC#での高度なフィルタリングにどのようなコードが表示されるかについて質問します。私はLinqとの経験がありますが、これは私が理解できなかったものです。linqでの高度なフィルタリング
たちは入力に自分のフィルタを持っており、彼らが必要とする結果になるだろう性質(string)Name
、(bool)New
と(int)Price
とユーザーを持つクラスItem
を考えてみましょう。
私たちは5個のオブジェクトをリスト内に入れて、リストのアイテムであるlist
としましょう。
new Item("Pen",true,12);
new Item("PostIt",false,35);
new Item("Phone",true,140);
new Item("Watch",true,5);
new Item("Lavalamp",false,2);
今、私は私が
List<Item> Results = list.where(item => item.Price> 10 && item.New).ToList();
でこれを行うことができます知っているが、ユーザーがすべて取得したい場合はどう10上の費用のすべての新しい時代..取得するには、この情報を処理したいとwoud新しいかどうかに関わらず10以上のコストを要する項目です。実行時にニーズに合わせてクエリを変更することはできません。入力パラメータのすべての可能な組み合わせに対してクエリを作成することは正しい方法です...誰かがこれをどうやってやるべきかの例を教えてもらえますか?
これは多分ですか? [CS-Script Source](https://csscriptsource.codeplex.com/wikipage?title=Choosing%20Compiler%20Engine) – Fabio
LINQは作成可能です。条件付きで他のフィルタを適用することもできますが、一度に1つずつ必要になります。単一の 'Where'ですべてを指定する必要はありません。 – Luaan
[Combine LinQ queries](http://stackoverflow.com/questions/9804683/combine-linq-queries)の可能な複製です。これはクエリを組み合わせたクエリですが、それに応じて大きなリストを構築することができますさまざまな基準を適用し、それらを実行します。 – BugFinder