/ / Filtrovanie pomocou viacerých rozbaľovacích zoznamov v MVC - asp.net-mvc-4, rozbaľovacie menu, linq-to-sql

Filtrovanie s viacerými zoznamami zoznamov v MVC - asp.net-mvc-4, drop-down-menu, linq-to-sql

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ď č. 1

Budete 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();