实体框架ASP.NET CRUD

时间:2016-06-11 12:42:04

标签: asp.net-mvc entity-framework

我有一个学生页面,学生可以插入,删除,更新。我有另一个页面,当然课程插入,删除,更新。现在我想要学生分配到课程。我清楚了吗?它应该在另一页中看到吗?你能帮助我吗?

1 个答案:

答案 0 :(得分:0)

您可以在学生页面上添加一个名为" Assign Courses"或类似的东西:

<asp:GridView ID="gvStudents" runat="server" AutoGenerateColumns="false">
    <Columns>
        <asp:BoundField DataField="Name" />
        <asp:BoundField DataField="Surname" />
        <asp:HyperLinkField 
            DataNavigateUrlFields="Name,Surname,ID"
            DataNavigateUrlFormatString="AssignCourses.aspx?Name={0}&Surname={1}&ID={2}"
            Text="AssignCourses" />
    </Columns>
</asp:GridView>

单击此超链接将使用户转到名为 AssignCourses.aspx 的新页面,并在查询字符串中传递名称,姓氏和ID(或您喜欢的任何其他字段)。

AssignCourses.aspx 上编写代码,以显示已分配给学生的课程列表。还有一个下拉列表列出所有其他课程。如果用户点击分配课程按钮使用课程ID和学生ID(来自查询字符串)将学生分配到课程。

AssignCourses.aspx 页面上的查询字符串中读取值:

string name = Request.QueryString["Name"].ToString();
string surname = Request.QueryString["Surname"].ToString();
int id = Convert.ToInt32(Request.QueryString["ID"]);

lblInfo.Text = String.Format("Assign courses for - {0} {1}", name, surname);

修改

如果您正在使用ASP.NET MVC,则可以使用Razor语法向AssignCourses视图添加超链接,如下所示:

@Html.ActionLink("Click here to assign course", "AssignCoursesAction", "PutControllerNameHere", new { id=student.ID }, null)