Pracujem na trojstupňovom projekte architektúry a mám niekoľko zoznamov DropDown na filtrovanie údajov, ktoré sa načítajú z databázy pomocou LINQ.
Teraz potrebujem spôsob, ako filtrovať pomocou týchto rozbaľovacích zoznamov, kde keď vyberiem položku v akomkoľvek rozbaľovacom zozname, filtruje sa a keď vyberiem z dvoch rozbaľovacích zoznamov, ktoré filtrujem podľa týchto dvoch výberov atď. ...
Používam linq takto:
var doctors = from d in db.Doctors
where d.CityID == id
&& d.HasSecretary == hasSec
&& d.OldSystem == oldSys
&& d.MetDoctor == metDoc
&& d.PriceProblem == priceProb
&& d.EasyToConvince == easyToCon
&& d.ComputerSavvy == comSav
&& d.Sold == sold
&& d.NotInterested == notIntr
&& d.FollowUp == followUp
&& d.NewClinic == newClin
&& d.RequestedADemo == reqDemo
select d;
Filtruje sa iba vtedy, keď vyberiem všetky rozbaľovacie zoznamy, a nie individuálne.
Prosím pomôžte :)
odpovede:
1 pre odpoveď č. 1Budete musieť urobiť podmienečné podmienky, napr.
var doctors = from d in db.Doctors;
if (id != null)
doctors = doctors.Where(d => d.CityID == id);
if (hasSec)
doctors = doctors.Where(d => d.HasSecretary == hasSec);
// other if statements
// results
var results = doctors.ToList();