Forum
Merhaba
select *
from Stok
where StokKod in ( select sh.StokKod
from stokhareket sh
where sh.FTarih>'01.06.2017' and sh.FTarih <= '06.06.2017'
group by sh.StokKod )
bu yaptığım sorgunun aynısını linq da nasıl yapabilirm
Teşekkürler
Aşağıdaki örneği inceleyin;
from c in CihazVerisis
where c.Barkod == "MAK1"
select new
{
c.ID,
c.KayıtTarihi,
CihazAdı = CihazTanımıs.Where(x=>x.CihazID == c.Cihaz).FirstOrDefault().Departman,
c.Zaman,
c.Değer,
c.Barkod,
c.Performans,
c.Operatör,
c.Duruş
}
Volkan bey sizin bu örneğinizde barkodu maki olanları listeliyorsunuz. sonrasında ise cihaztanimindan o cihaza ait cihaz adını çekiyorsunuz. Benim sorduğum başka birşey fakat yine de teşekkür ederim
Ben sorgusunu şu şekilde yazdım
var Sorgu = (from gelen in Contxt.StokHarekets
where (from sh in Contxt.StokHarekets
where sh.FTarih.Value.Date >= DateTime.Parse(dateBaslama.Text).Date && sh.FTarih.Value.Date <= DateTime.Parse(dateBitis.Text).Date
select sh.StokKod).Distinct().Contains(gelen.StokKod)
group gelen by new
{
gelen.StokKod,
Stokİsmi = Contxt.Stoks.FirstOrDefault(u => u.StokKod == gelen.StokKod).StokIsmi,
gelen.Barkod
} into stkhrkt
select new
{
stkhrkt.Key.StokKod,
stkhrkt.Key.Stokİsmi,
stkhrkt.Key.Barkod,
Miktar = stkhrkt.Where(u => u.StokKod == stkhrkt.Key.StokKod && u.FTarih.Value.Date >= DateTime.Parse(dateBaslama.Text).Date && u.FTarih.Value.Date <= DateTime.Parse(dateBitis.Text).Date).Sum(u => u.Miktar) ?? 0
});