そのため、私が取り組んでいるプロジェクトに問題があります。クエリに大量のデータがあるため、SQL Server によってページングと並べ替えが処理されるグリッドビューを作成しています。これを行う方法の例をダウンロードし、サンプル SQL をテーブルに合わせて変更すると、問題なくテストされます。このコードをメイン プロジェクトに転送すると、データセットにデータが入力されなくなります。私は実際にコードが機能することを知っています.SQLは48行を返し、ページあたり25行でページングする必要があることを知っています. ArrayList を返す関数で SQL を実行してから、それを Data Table に変換して DataSet に入力しようとしましたが、Data Table は入力されていますが、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();
}