Anasayfa » Forum

Entity Framework Gi...
 
Bildirimler

Entity Framework Gider - Gelir - Yürüyen Bakiye  

  RSS
Bahtiyar Hisar
(@BahtiyarHisar)
Üye

Kasa programında Gelir ve giderlerin olduğu gridview yapım var bunları Tarih sırasına göre sıralıyorum. Bakiye adında bir sütuna ihtiyacım var yürüyen bakiye tutmak istiyorum. 

void GridDoldur()
        {
            var gridDoldur = (from kasa in ctx.Kasas
                              orderby kasa.TARIH
                              select new
                              {
                                  kasa.ID,
                                  kasa.TARIH,
                                  kasa.FISNO,
                                  kasa.MAKBUZNO,
                                  kasa.GELIR,
                                  kasa.GIDER,
                                  kasa.ACIKLAMA
                              }).ToList();
            Liste.DataSource = gridDoldur;
        }

 

Alıntı
Gönderildi : 22/03/2017 23:37
Erdem SELÇUK
(@eravse)
Saygın Üye Forum Yöneticisi

merhaba bunu EF yerıne dırek SQL üzerinde bir view ile halletmeniz daha dogru olur https://social.technet.microsoft.com/Forums/sqlserver/tr-TR/413e5f88-9aa6-4796-95d0-63950e76a376/sql-yryen-bakiye?forum=sqltr şu örnek işinizi görecektir.

 

saygılar

 

CevapAlıntı
Gönderildi : 03/04/2017 03:56
Volkan Alkılıç
(@volkanalkilic)
Üye

Linq ile yürüyen toplam aşağıdaki şekilde alınabilir;

List<int> veriler = new List<int>() { 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 30, 2017 };
int tmp = 0;

var sorgu =
from x in veriler
select new
{
sayı = x,
yürüyen_bakiye = (tmp += x) //<===
};

foreach (var v in sorgu)
{
Console.WriteLine("Sayı: {0}, Bakiye: {1}",
v.sayı,
v.yürüyen_bakiye);
}

Buna göre aşağıdaki şekilde deneyebilirsiniz;

void GridDoldur()
{
int tmp = 0;
var gridDoldur = (from kasa in ctx.Kasas
orderby kasa.TARIH
select new
{
kasa.ID,
kasa.TARIH,
kasa.FISNO,
kasa.MAKBUZNO,
kasa.GELIR,
kasa.GIDER,
yürüyen_bakiye = (tmp += kasa.GIDER - kasa.GELIR) //<===
kasa.ACIKLAMA
}).ToList();
Liste.DataSource = gridDoldur;
}

CevapAlıntı
Gönderildi : 08/04/2017 19:47
Paylaş: