我對asp.net和c#非常陌生,我希望得到一些關於dropdownlist的幫助。我想從下拉列表中的學生表中返回特定學生的ClassName值。我還希望下拉列表中填入StudentClasses表中的所有ClassNames。但是我的代碼不會返回下拉列表中的任何值。爲下拉列表綁定數據和返回值
有人能告訴我我做錯了什麼嗎?
我有一個名爲StudentClasses數據如下表,例如:
ClassID ClassName
==
1 5B
2 6C
3 K/1F
我有另一個表名爲學生,其中來自StudentClasses添加一個類是外鍵,如:
StudentID FirstName LastName ClassID
==
1 John Smith 1
2 Sarah Jones 2
3 Billy Cain 2
我想在我的頁面視圖返回如下:
類將是一個下拉從StudentClasses所有的className的列表,顯示約翰·史密斯的類,5B。 名字和姓氏是文本框。 我也有一個更新按鈕,所以我可以編輯的細節 編輯類,他們只能從下拉列表中選擇。
First Name: John Last Name: Smith Class: 5B
這是aspx頁面背後的代碼。
protected void rptStudents_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
DropDownList ddlClassName = (DropDownList)e.Item.FindControl("ddlClassName");
ddlClassName.DataTextField = "ClassName";
ddlClassName.DataValueField = "ClassID";
//this is the object that is bound to this particular item (row)
StudentClass className = (StudentClass)e.Item.DataItem;
//TO DO: student should contain class id instead of name.
ddlClassName.SelectedValue = (className.ClassID).ToString();
//to do get list of class items here and set datasource and then databind();
Result<List<StudentClass>> result = StudentClassController.GetAllStudentClasses();
ddlClassName.DataSource = result.Data;
ddlClassName.DataBind();
}