select row_number() over (order by ProductID) as 'Satır No', ProductName, UnitPrice, QuantityPerUnit from Products
Şimdide böyle bir işlemin linq ile nasıl yazıldığına bakalım.
var productInfo = db.Products.Select(s => new { s.ProductName,s.UnitPrice,s.QuantityPerUnit})
.AsEnumerable()
.Select((s, sayac) => new
{
s.ProductName,
s.UnitPrice,
s.QuantityPerUnit,
satir_no= sayac + 1
});
Ne yaptığımıza bakacak olursak. İlk select işleminde ilgili alanları veri tabanında çektik. AsEnumarable() ile normalde IQueryable olan dönüş değerini IEnumerable'a çevirdik.
Dikkat etmemiz gereken yer ikinci select işlemi. Burada parantez içinde s ve sayac adında iki tane parametre tanımladık. s tablonun kendisine referans eder. sayac ise sıfırda başlayarak her kayıt için bir artan değişken görevini görür.
Linq ile Row_Number() kullanımı bu kadar.
Kolay gelsin...
Hiç yorum yok:
Yorum Gönder