我正在研究C#,Visual studio 2012
我有两个下拉列表。
在第一个下拉列表中,它显示学生姓名列表(来自表[学生]).....在第二个下拉列表中显示专业(来自表[课程])。
这两个将来自数据库,其中包含两个表(学生和课程)。
假设当用户从第一个下拉列表中选择学生时,在另一个下拉列表中,它应该显示该学生的相关专业。
如何使用asp.net Web应用程序执行此操作而无需编程。
感谢。
答案 0 :(得分:4)
我认为你的意思是说没有代码而不是没有编程。
您可以使用SQL DataSources。
StudentId | StudentName
----------+-------------
1 | Jon
2 | Marry
CourseId | CourseName | StudentId
---------+------------+----------
1 | Physic | 1
2 | Math | 1
3 | Physic | 2
4 | English | 2
<asp:DropDownList ID="DropDownListStudent" runat="server"
DataSourceID="StudentSqlDataSource"
DataTextField="Name" DataValueField="StudentId" AutoPostBack="True">
</asp:DropDownList>
<asp:SqlDataSource ID="StudentSqlDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT StudentId, StudentName FROM [Student]">
</asp:SqlDataSource>
<asp:DropDownList ID="DropDownListCourse" runat="server"
DataSourceID="CourseSqlDataSource" DataTextField="CourseName"
DataValueField="CourseId">
</asp:DropDownList>
<asp:SqlDataSource ID="CourseSqlDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT * FROM [Course] WHERE StudentId=@StudentId">
<SelectParameters>
<asp:ControlParameter ControlID="DropDownListStudent"
PropertyName="SelectedValue"
Name="StudentId" Type="Int32" DefaultValue="1" />
</SelectParameters>
</asp:SqlDataSource>
注意: 确保DropDownListStudent的 AutoPostBack =“True”