Как правильно получить таблицу базы данных с пользовательской переменной? Я подумал, что это было бы довольно просто ...
// Я знаю, что встроенные комментарии плохи, терпите меня здесь ..
string sDDL1 = DropDownList1.SelectedValue; // sDDL1 = "tableX"
string sDDL2 = DropDownList2.SelectedValue; // sDDL2 = "9000"
string sDDL3 = DropDownList3.SelectedValue; // sDDL3 = "p.PK_XID"
// Закодировано, все работает.
dbDataContext myDB = new dbDataContext();
var dynamicQuery = from p in myDB.tableX
where p.PK_XID == 9000
select p;
// Заданные пользователем данные берутся на myDB.sDDL1. Если я жестко закодирую myDB.sDDL1 вместо myDB.tableX, запрос будет выполнен.
dbDataContext myDB = new dbDataContext();
var dynamicQuery = from p in myDB.sDDL1 //myDB.tableX instead, runs just fine...
where sDD3 == sDD2
select p;
Ошибка:
«dbDataContext» не содержит определения для «sDDL1» и не имеет метода расширения «sDDL1», принимающего первый аргумент типа «dbDataContext» (у вас отсутствует директива using или ссылка на сборку?)
Из того, что я понимаю, ошибка говорит мне, что в базе данных нет такой таблицы "sDDL1", но sDDL1 - это переменная ... не должна быть myDB. захватить значение переменной?