none
Asp.Net Wep Api GroupBy RRS feed

  • Soru

  • Merhabalar,

    var result=db.Store.Where(x=>x.Id==Id).GroupBy(x=>x.Id).Take(1).ToList();

    şeklinde bir sorgum var ,amacım Id'lere göre grupla ve her bir gruptan sadece  tek kayıt al ancak bu sorgu sadece tek bir Id için işlem yapıyor daha doğrusu son eklenen kaydı döndürüyor.Nasıl düzeltebilirim ? Teşekkürler.



    • Düzenleyen G_g4 9 Ocak 2019 Çarşamba 11:00
    9 Ocak 2019 Çarşamba 10:44

Yanıtlar

Tüm Yanıtlar

  • var result=db.Store.Where(x=>x.Id==Id).GroupBy(x=>x.Id).Select(q=> q.First()).ToList();

    Agha Huseynov

    • Yanıt Olarak İşaretleyen G_g4 9 Ocak 2019 Çarşamba 15:18
    9 Ocak 2019 Çarşamba 13:48
  • Çok teşekkür ederim yanıtınız için.
    9 Ocak 2019 Çarşamba 15:18
  • Burada GroupBy son derece gereksiz:

    var result=db.Store.FirstOrDefault(x=>x.Id==Id);

    Not: Bir de, First() ya da FirstOrDeault() sonrası ToList() olmaz, çünkü tek bir object donuyor.


    • Düzenleyen CetinBasoz 9 Ocak 2019 Çarşamba 17:27
    9 Ocak 2019 Çarşamba 17:25
  • Burada GroupBy son derece gereksiz:

    var result=db.Store.FirstOrDefault(x=>x.Id==Id);

    Not: Bir de, First() ya da FirstOrDeault() sonrası ToList() olmaz, çünkü tek bir object donuyor.


     "her bir gruptan sadece  tek kayıt"  isteniyor. 

    www.cihanyakar.com

    9 Ocak 2019 Çarşamba 20:14
    Moderatör
  • Ama sadece tek bir grup var. Tek bir grubun, ilk kaydı isteniyor. Ben mi yanlış okuyorum acaba.

    10 Ocak 2019 Perşembe 15:46
  • Where(x=>x.Id==Id)

    arkadaşın yazdığı şu kod kafa karıştırıyor. Burada ki Id gerçek Id rolünü üstlenmiyor gibi algıladım.


    Agha Huseynov

    10 Ocak 2019 Perşembe 17:09
  • Gercek veya degil, bir sabit, sonuçta tek bir Id'ye ait kayitlari istiyor, yani tek grup var. Tek grubun ilk kaydını istiyor, o gruptakiler de Id=x olanlar, yani Id = x olan ilk kaydı istiyor. Yanlış mi düşünüyorum?
    10 Ocak 2019 Perşembe 22:54
  • Gercek veya degil, bir sabit, sonuçta tek bir Id'ye ait kayitlari istiyor, yani tek grup var. Tek grubun ilk kaydını istiyor, o gruptakiler de Id=x olanlar, yani Id = x olan ilk kaydı istiyor. Yanlış mi düşünüyorum?
    Arkadaş yanıt yazana kadar kesin bilemeyeceğiz ama o query'i yazmış ve "sadece tek bir Id için işlem yapıyor... Nasıl düzeltebilirim" diyor. Bir çok grup var her gruptan ilk kaydı istiyor. 

    www.cihanyakar.com

    11 Ocak 2019 Cuma 08:58
    Moderatör
  • Herkese Merhabalar,

    Kusura bakmayın müsait değildim bir kaç gündür yazamadım,tek bir grup olmuyor şöyle aslında bir örnek vereyim umarım anlaşılır olur.

    STORES

    1.Kayıt

    Id=1

    ContentId=3

    UserID=5

    ///////

    2.Kayıt

    Id=2

    ContentId=3

    UserId=6

    Göreceğini üzere ContentId'ye ait 2 kayıt var 2'si bir grup bunun gibi ContentId'si aynı olan kayıtlar vardı amacımda bu ContentId'lere göre bir gruplama yapıp bu gruplardan sadece tek bir kayıt almam yeterli olacaktı.Agha Beyin çözümü de benim için yeterli oldu.Herkese tekrardan teşekkür ederim.


    • Düzenleyen G_g4 12 Ocak 2019 Cumartesi 15:51
    12 Ocak 2019 Cumartesi 15:51