내 페이지에 gridview가 있고 일부 검색 결과가 표시됩니다.asp.net에서 목록에서 gridview를 채우는 방법?
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:";
하지만 난 이미의 목록의 이름의 SearchResult라고하자, 이전과 같은 쿼리를 수행하고 목록에서 결과를 지켰다 : 여기에 내가 그것을 할 방법이다. 내 질문은 테이블을 채우기 위해 데이터베이스를 다시 쿼리하는 대신 해당 목록의 항목을 사용하여 gridview를 채울 수 있습니까? 아니면 gridview 대신 다른 작업을 사용해야합니까?
는
고마워요,하지만 이럴 때 ID가 'searchResults'인 GridView의 데이터 소스에 열을 생성 할 속성이나 속성이 없었습니다. 데이터 원본에 내용이 있는지 확인하십시오. 문제에 대한 어떤 생각? – yrazlik
아래의 jadarnel27 님의 의견을보세요. 필드를 매핑 할 수 없습니다. 공용 속성으로 변환해야합니다. 그게 효과가있다. – Ronald