Пишу приложение на C# + WPF
Имеется combоboox, в который помещаются данные из таблиц БД SQLIte.
Я создал метод, который читает БД и помещает данные в combobox, в параметрах метода буду указывать название таблицы.
Название таблицы будет переменной типа string.
Как передать название таблицы в sqlite запросе?
Запрос выглядит так:
"SELECT ID FROM category1";
category1 должно быть название переменной
Вот,что я попытался сделать, но это не работает:
private SQLiteConnection sqlCon;
private SQLiteCommand sqlCommand;
private SQLiteDataAdapter sqlDataAdapter;
private DataSet ds = new DataSet();
private DataTable dt = new DataTable();
public void SetConnection()
{
sqlCon = new SQLiteConnection("Data Source=database.db;Version=3;New=False;Compress=True");
}
public void ReadMyData(ComboBox comboBox, string category)
{
SetConnection();
sqlCon.Open();
sqlCommand.CommandText = "SELECT ID FROM @category";
sqlCommand.CommandType = CommandType.Text;
sqlCommand.Parameters["@name"].Value = category;
sqlCommand = new SQLiteCommand(sqlCommand.CommandText, sqlCon);
List<string> str = new List<string>();
try
{
SQLiteDataReader sqReader = sqlCommand.ExecuteReader();
// Always call Read before accessing data.
while (sqReader.Read())
{
str.Add(sqReader["ID"].ToString());
string questions = sqReader["ID"].ToString();
comboBox.Items.Add(questions);
}
// always call Close when done reading.
sqReader.Close();
}
finally
{
sqlCon.Close();
}
}
Вызов метода в другом классе:
private Database db = new Database();
db.ReadMyData(comboQuestions, "category1");