ページにグリッドビューがあり、いくつかの検索結果を表示しています。これが私がそれを行う方法です:
int row = -1;
int.TryParse(e.CommandArgument as string, out row);
GridViewRow gdrow = instCourses.Rows[row];
// *** Get the underlying data item - in this case a DataRow
DataRow dr = ((DataTable)this.instCourses.DataSource).Rows[gdrow.DataItemIndex];
// *** Retrieve our context
string courseCode = dr["CourseCode"].ToString();
string courseNumber = dr["CourseNumber"].ToString();
string term = dr["Term"].ToString();
SqlConnection con = new SqlConnection();
con.ConnectionString = Userfunctions.GetConnectionString();
con.Open();
SqlCommand cmd=new SqlCommand("SELECT RegisterTable.StudentID, StudentTable.Name, StudentTable.Surname FROM RegisterTable JOIN StudentTable ON RegisterTable.StudentID = StudentTable.ID WHERE RegisterTable.CourseCode = @courseCode AND RegisterTable.Term = @term AND RegisterTable.CourseNumber = @courseNumber",con);
cmd.Parameters.AddWithValue("@courseCode", courseCode);
cmd.Parameters.AddWithValue("@courseNumber", courseNumber);
cmd.Parameters.AddWithValue("@term", term);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
studList.DataSource = dt;
studList.DataBind();
Label1.Visible = true;
Label1.Text = "Students who are registered to "+courseCode+ " " + courseNumber +" are listed below:";
しかし、私は以前に同じクエリを実行し、結果をリストに保持しました。リストの名前がsearchResultsだとしましょう。私の質問は、テーブルを埋めるためにデータベースを再度クエリする代わりに、そのリストの項目を使用してグリッドビューを埋めることはできますか? または、これを行うには gridview の代わりに他のものを使用する必要がありますか?
ありがとうございました