8
previous質問から私は今質問しました。そしてAND & ORクエリの動的式を構築する方法を今考えています。次の文字列の配列を指定してループ内で動的AND OR式ツリーを構築する方法
:
string[] ranges = new string[]{"0-100", "100-200", "500-1000"};
私は動的LINQの式でこれを表現したいと思います
- の線に沿って何か:私は動的LINQの式を作成するにはどうすればよい
var v = from p in products
where
(p.Amount >= 0 && p.Amount <= 100) ||
(p.Amount >= 101 && p.Amount <= 200) ||
(p.Amount >= 500 && p.Amount <= 1000)
select p;
このループで?
string[] ranges = new string[]{"0-100", "100-200", "500-1000"};
var query = products.AsQueryable();
foreach (var item in ranges)
{
int min = int.Parse(item.Split('-').First());
int max = int.Parse(item.Split('-').Last());
//Linq expression?
}
感謝。私は、述語ビルダーとそれ以上を含むnugetパッケージLINQKitのインストールを終了しました。これは、EFオブジェクトで作業している場合に便利です。 – Fixer