DataSet не заполняется, и я не могу понять, почему...?
Так что у меня возникла проблема с проектом, над которым я работаю. Я создаю gridview, который будет обрабатывать страницы и сортировку SQL Server из-за большого количества данных в наших запросах. Я скачал пример того, как это сделать, изменил пример SQL, чтобы он соответствовал моим таблицам, и он отлично тестирует. После того, как я перенесу этот код в свой основной проект, набор данных не заполняется никакими данными. На самом деле я знаю, что код работает, я знаю, что SQL возвращает 48 строк и должен быть разбит на страницы по 25 строк на страницу. Я даже попытался запустить SQL в функции, которая возвращает ArrayList, а затем преобразовать его в таблицу данных и заполнить DataSet, таблицы данных заполняются, но счетчик данных в DataSet возвращается как 0.... Я в полная потеря. Я не получаю никаких ошибок, и это связано с моей базой данных. Любая помощь будет великолепна, так как я не в состоянии растеряться по этому вопросу.
Вот мой код для заполнения DataSet;
public DataSet GetDataSet(string sql) {
DataSet ds = new DataSet();
using (SqlConnection conn = new SqlConnection(_connectionString))
{
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand(sql, conn);
conn.Open();
adapter.Fill(ds);
}
return ds;
}
Я также попробовал этот код;
SqlConnection src = new SqlConnection(_connectionString);
try
{
src.Open();
using (SqlDataAdapter DA = new SqlDataAdapter(sql, src))
{
DataTable report = new DataTable();
DA.Fill(report);
DS = new DataSet();
DS.Tables.Add(report);
}
src.Close();
}
1 ответ
В первом коде сначала заполните таблицу ds следующим образом
con.open();
adapter.Fill(ds,"THE TABLE NAME EXACTLY IN YOUR DB");
GridView1.DataSource= ds.Tables["THE TABLE NAME EXACTLY IN YOUR DB"];
GridView1.DataBind();