linq to sql if control

linq to sql if control

我想在 linq 查询中进行 if 控制,但我不知道如何进行此控制。

var result = from sk in stokKartlari
                     join ue in uretimEmirleri on sk.id equals ue.UrunId
                     join ub in urunBarkodlari on ue.Id equals ub.UretimEmriId
                     select new UretimEmriJsonViewModel
                     {
                         Id = ue.Id,
                         BaslangicTarihi = string.Format("{0:yyyy-MM-dd}", ue.BaslangicTarih),
                         BitisTarihi = string.Format("{0:yyyy-MM-dd}", ue.BitisTarih),
                         StokAdi = sk.stokadi,
                         StokKartiId = ue.UrunId,
                         UretimAdet = ue.Adet,
                         UretimBasTarih = string.Format("{0:yyyy-MM-dd}", ue.UretimBasTarih),
                         UretimBitTarih = string.Format("{0:yyyy-MM-dd}", ue.UretimTamamTarih),
                         UretimSeriNo = ue.UEmirBarkod,
                         Res= //true or false
                     };

我尝试 if urunBarkodlari.Where(x=>x.Printed==true && x.UId==ue.Id).Count() count > 0 Res= true or false

我正在做我想做的事,用 foreach 返回列表并发送查询。我可以在不发送查询的情况下通过 linq 执行此操作吗?

我解决了我的问题;

Res = urunBarkodlari.Any(x => x.Printed== true && x.UId==ue.Id).Count() > 0

urunBarkodlari.Any(x => x.Printed== true && x.UId==ue.Id).Count() > 0

你不需要 "? true : false " 如果有任何记录,将 return 为真。

你可以检查这个post: .