我的程序遇到问题,运行它时出现此错误“DataBinding:'System.Data.DataRowView'不包含名为'StudentName'的属性。”,那么如何解决?
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolderSubMenu" Runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolderMainContent" Runat="Server">
<table>
<tr>
<td style="width:150px;">Courses</td>
<td style="width:20px">:</td>
<td>
<asp:DropDownList ID="DropDownListCourses" runat="server"></asp:DropDownList>
</td>
</tr>
<tr>
<td style="width:150px;"></td>
<td style="width:20px"></td>
<td>
<asp:Button ID="ButtonView" runat="server" Text="Veiw"
onclick="ButtonView_Click"/>
</td>
</tr>
</table>
<div style="padding-top:30px"></div>
<table>
<asp:Repeater ID="RepeaterDataVeiw" runat="server">
<HeaderTemplate>
<table>
<tr>
<td>Student Name</td>
<td>Course</td>
<td>Subject</td>
<td>Veiw</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%#Eval("StudentName")%></td>
<td><%#Eval("CourseName")%></td>
<td><%#Eval("SubjectName")%></td>
<td><a href="ListForum.aspx">Forum</a></td>
</tr>
</ItemTemplate>
<AlternatingItemTemplate>
<tr>
<td><%#Eval("StudentName")%></td>
<td><%#Eval("CourseName")%></td>
<td><%#Eval("SubjectName")%></td>
<td><a href="ListForum.aspx">Forum</a></td>
</tr>
</AlternatingItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</table>
</asp:Content>
代码隐藏:
public partial class Student_ListCourses : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
try
{
if (!IsPostBack)
{
System.Data.DataTable dt;
BusinessLayer.CoursesController oCourse = new BusinessLayer.CoursesController();
dt = oCourse.Select();
DropDownListCourses.DataSource = dt;
DropDownListCourses.DataValueField = "CourseID";
DropDownListCourses.DataTextField = "CourseName";
DropDownListCourses.DataBind();
}
}
}
protected void ButtonView_Click(object sender, EventArgs e)
{
try
{
System.Data.DataTable dt;
BusinessLayer.SubjectsController oCourse = new BusinessLayer.SubjectsController();
oCourse.CourseID = int.Parse(DropDownListCourses.SelectedValue);
dt = oCourse.Select();
RepeaterDataVeiw.DataSource = dt;
RepeaterDataVeiw.DataBind();
}
catch (Exception ex)
{ }
}
}