ホームページに最近追加した商品を掲載したい。私はコントローラーにChildActionを追加しましたが、最後の5つのレコードをフェッチするためにどのLinqクエリを実行すればよいか理解できません。
[〜#〜] linq [〜#〜]
var lastFiveProducts = (from p in products
orderby p.ProductDate descending
select p).Take(5);
ラムダ
var lastFiveProducts = products.OrderByDescending(p => p.ProductDate).Take(5);
あなたがどちらを好むか。
.Skip(count - 5);
または
.Reverse().Take(5).Reverse()
最も簡単な方法は、順序を逆にして(たとえば、_orderby foo descending
_を使用)、次に Take()
を使用することです。例えば:
_var recentProducts = products.OrderByDescending(x => x.CreationDate)
.Take(5);
_
またはクエリ式形式(上記の形式でより簡単に表現される単純なクエリには使用しません):
_var recentProducts = (from product in products
orderby product.CreationDate descending
select product).Take(5);
_
MoreLINQパッケージをインストールしてから:
CollectionName.TakeLast(5);
これは昇順で最後の5つを選択するためのものです
var query = from tbl in (from tbl1 in object.Table orderby
tbl1.Column descending select tbl1).Take(5) orderby tbl.Column
ascending select tbl;
コード:
INT[]number = new int[] {3,6,8,2,3,7,0,2,5}
var result= (from r in number select r).reverse().take(5);
結果:5 2 0 7 3