0
protected void Page_Load(object sender, EventArgs e)
{
using(SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS; database=employee; integrated security = SSPI"))
{
SqlCommand cmd = new SqlCommand("select * from emp",con);
con.Open();
SqlDataReader sdr = cmd.ExecuteReader();
DataTable dt = new DataTable();
dt.Columns.Add("ID");
dt.Columns.Add("Name");
dt.Columns.Add("Option");
while (sdr.Read())
{
DataRow dr = dt.NewRow();
dr["ID"] = sdr["uid"];
dr["Name"] = sdr["uname"];
dr["Option"] = addrbl();
dt.Rows.Add(dr);
}
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
private object addrbl()
{
Panel p1 = new Panel();
RadioButtonList rl1 = new RadioButtonList();
rl1.Items.Add(new ListItem("yes","1"));
rl1.Items.Add(new ListItem("no","0"));
return(p1.Controls.Add(rl1));
}
관련없는 특정 질문을 던지기 만하면됩니다. 많은 코드를 간단한 ['dt.Load (sdr);'] (http://msdn.microsoft.com/en-us/library/system.data.datatable.load .aspx) 더 나은 점은 중간 단계로 데이터 테이블을 만들 필요없이 DataReader에 직접 바인딩 할 수 있다는 것입니다. –
또한 질문에 몇 가지 특수성을 추가하십시오. 예를 들어,이 예외가 발생한 행. – BinaryTox1n