14
は、私はこの非常によく似たクエリがあります。LINQ
var result = from db.MyTable.Where(d => (double)d.Price >= minValue)
を句がd.Proce >= minValue
を持っているところ私が必要とし、 d.Price =< maxValue
(T-SQL BETWEEN
のように)。
どうすればいいですか?これについて
は、私はこの非常によく似たクエリがあります。LINQ
var result = from db.MyTable.Where(d => (double)d.Price >= minValue)
を句がd.Proce >= minValue
を持っているところ私が必要とし、 d.Price =< maxValue
(T-SQL BETWEEN
のように)。
どうすればいいですか?これについて
方法:
var result = from db.MyTable.Where(d => (double)d.Price >= minValue
&& (double)d.Price <= maxValue)
だけで完全なものにするため、あなたが別の入力に基づいてクエリを構築している場合は、連続Where
呼び出しとそれを構成することができます。コードの読みやすさのために
IQueryable<SomeType> query = db.MyTable;
if(minValue != null) // a Nullable<double>
{
var actualMin = minValue.Value;
query = query.Where(d => (double) d.Price >= actualMin);
}
if(maxValue != null) // a Nullable<double>
{
var actualMax = maxValue.Value;
query = query.Where(d => (double) d.Price <= actualMax);
}
// keep working with "query", for example, query.ToList();
、多分あなたはこれらのNULL可能タイプに.HasValueプロパティを使用します。 – BrunoSalvino
@ Bruno meh、それらをnull可能な型と考えるなら、nullと比較するとより自然であり、参照型のテストとよく比較されます。 –