Сначала выполняется проверка того, зарегистрировался ли учащийся на узле:
If Len(Session("StudentID")) = 0 Then
Если нет, его направляют на регистрацию:
Response.Redirect("./index.aspx")
Стандартный текст и имя учащегося помещаются в элемент управления Label с именем lblTitle:
IblTitle.Text = "<center>CTyfleHT " __
& Session("StudentName") & "</center>"
На следующем этапе извлекаются названия всех курсов, на которые зачислен пользователь, посредством установления связи между таблицами Courses и StudentsCourses:
DBCommand = New OleDbDataAdapter _
("Select Courses.CourselD, CourseName From Courses " _
& "Inner Join StudentsCourses on " _
& "Courses.CourselD = StudentsCourses.CourselD " _
& "Where StudentID = " & Session("StudentID")
, DBConn)
Эти данные помещаются в таблицу DataSet, названную CoursesEnrolled:
DBCommand.Fi11(DS PageData, _
"CoursesEnrolled")
Необходимо проверить, были ли возвращены какие-либо записи:
If DSPageData.Tables("CoursesEnrolled").Rows.Count = 0 Then
Если ни одна запись не была возвращена, значит, пользователь еще не поступил ни на один курс. В этом случае на экран выводится соответствующее сообщение:
IblMessage.Text = "Вы не числитесь " _
& " ни на одном курсе."
а раскрывающийся список (DropDownList) и кнопка (Button) становятся невидимыми:
ddlCours esEnrolled.Visible = False
butOK.Visible = False
В противном случае выводится другое сообщение:
IblMessage.Text = "Выверите курс, " _
& "который хотите изучать."
Тогда список DropDownList связывается с таблицей объектов DataSet:
ddlCoursesEnrolled.DataSource = _
DSPageData.Tables("CoursesEnrolled").DefaultView
ddlCoursesEnrolled.DataBind()
Вторая процедура активизируется, когда учащийся выполняет щелчок на кнопке ОК.
Sub SubmitBtn_Click(Sender As Object, E As EventArgs)
Session("CourselD") = ddlCoursesEnrolled.Selectedltem.Value
Response.Redirect("./course.aspx")
End Sub
Она запоминает идентификатор курса, выбранного учащимся:
Session ("Coursellb")' = ddlCoursesEnrolled. Selectedltem.Value
и перенаправляет его на страницу Курс:
Response.Redirect("./course.aspx")
Страница Запись
Страница Запись содержит список всех курсов. Здесь пользователь может поступить на интересующий его курс.
Нам понадобятся два элемента управления Label. Назначение первого — отображение имени учащегося и названия страницы:
<asp:Label
id="lblTitle"
BorderWidth="7px"
BorderStyle=7
Width="90%"
Font-Size="25pt"
Font-Name="Tahoma"
runat="server"
/>
Второй элемент управления Label нужен для вывода на странице инструкций:
<asp:Label
id="lblMessage"
Font-Size="12pt"
Font-Name="Tahoma"
Font-Bold="True"
runat="server"
Text="Выберите курс, который хотите изучать."
|