Asked By miho stumi
09-Nov-11 04:26 AM
Hi may U try help me to optimize this query, because it work very slowly:
public List<SzukajPremium> SzukajPremium(string kod, string rok, string numer)
{
DataContext db = new DataContext();
var result = from z in db.Zeszyts
join p112 in db.ZeszytP112s on z.IdZeszyt equals p112.IdZeszyt
join dok in db.Doks on z.IdZeszyt equals dok.IdZeszyt
select new SzukajPremium { P182 = dok.P180, Tytul = dok.Tytul, IDPUB = string.Format("{0} [dodatek: {1}] - {2}.{3}", z.P101, z.P133,dok.P180.Substring(4,12),dok.P180.Substring(16,7).Replace("0","")), KodDodatku=z.Nazwa.Substring(13,3), Rok=z.P110, Numer=p112.P112 };
if (!string.IsNullOrEmpty(kod))
result = result.Where(k => k.KodDodatku == kod);
if (!string.IsNullOrEmpty(rok))
result = result.Where(r => r.Rok == rok);
if (!string.IsNullOrEmpty(numer))
result = result.Where(n => n.Numer == numer);
return result.ToList();
}