För det första så känns det lite tokigt med en tabell med så många kolumner. Det löses antagligen effektivare med en relationsstruktur. I synnerhet eftersom det du vill lista är kolumnnamnen.
Gör så här (kolumnnamnen är bara exempel och bör bytas ut):
objekttabell:
objektid (int) .....
värdetabell:
värdeid (int), värdenamn
kopplingstabell:
objektid,värdeid
Då kan du ställa vettiga SQL-frågor
--Plocka ut alla värden som är kopplade till objektet med id=@id
SELECT v.värdeid,v.värdenamn FROM värdetabell
INNER JOIN kopplingstabell k ON k.värdeid=v.värdeid
WHERE k.objectid=@id
--Plocka ut alla värden som inte är kopplade till objektet med id=@id
SELECT v.värdeid,v.värdenamn FROM värdetabell
LEFT OUTER JOIN kopplingstabell k ON k.värdeid=v.värdeid AND k.objectid=@id
WHERE k.värdeid IS NULL
...och det är helt rätt att du ska använda SQL till detta. DropDownList visar det det som matas in i den och har ingen logik för datafiltrering.
