行が見つからない場合は...LINQ - 最大値を持つフィールドからの戻り値私はこのようなテーブルを持っている
ID Description LowThreshold HighThreshold
1 BAD 0.0 .69
2 MEETS .70 .89
3 GOOD .90 2
ここでオブジェクトが基づいて右の説明を選択しますLINQクエリを書くことです与えられた10進数例えば.75は.70と.89の間にあるので、 "MEETS"を返します。しかし、キッカーは、Numberがすべての範囲よりも高い場合は、HighThresholdが最も高いレコードのDescriptionを自動的に返します。だから、私が5を渡すと、「良い」が返されるはずです。
私はこれまでのところ、これを持っているが、明らかに、2よりもそれがスコアとエラーが出て高い:
private string GetEvaluationDescription (decimal score)
{
string evaluationText = myContext.PerformanceRanges.Where
(e =>
e.LowThreshold <= score
&&
e.HighThreshold >= score
)
.Select(eval => eval.Description).First().ToString();
}
私はこの1つのだけのクエリでこれを実現したいのですが、私の想像力が私を取得していませんそこ。私はthisの記事で見つけたもの試みたが、それはこれについて