次のLINQを使用して、変数範囲でグループ化しています(ここの質問に従って)
var ranges = new List<decimal> { 5m, 10m, 20m };
var grouped = entities.PointTransaction.Where( x => x.UserInfo.College == collegeID
&& x.Amount < 0)
.GroupBy( x=> ranges.FirstOrDefault( r => r >= Math.Abs( (decimal) x.Amount) )
).ToList();
ただし、次のエラーが表示されます。
single-row subquery returns more than one row
どの行もどの範囲とも一致しない場合 (たとえば、値がすべて 5 未満の場合)、クエリは機能します。
DevArt Dotconnect for Oracle、Entity Framework 4 を使用しています