private bool advisorAvailable(string advisorName, DateTime appDate, TimeSpan appTime) { AdvisorDBEntities dbcon = new AdvisorDBEntities(); dbcon.AdvisorTables.Load(); try { AdvisorTable existingApp = (from x in dbcon.AdvisorTables.Local where x.Date.Equals(appDate) && x.Time.Equals(appTime) select x).First(); } catch (Exception e) { return(true); } lstResult.Items.Clear(); lstResult.Items.Add("The advisor is unavailable at the selected date and time."); return(false); }
protected void submitBtn_Click(object sender, EventArgs e) { DateTime dateTime; if (DropDownList1.Items.Count != 0) { dateTime = DateTime.ParseExact(DropDownList1.SelectedItem.Value, "hh:mm tt", CultureInfo.InvariantCulture); } else { return; } string role = check_role(); NewBDcon(); dbconDate.StudentTables.Load(); dbconDate.UserTables.Load(); dbconDate.AdvisorTables.Load(); dbconDate.AppointmentTables.Load(); dbconDate.MessagesTables.Load(); TimeSpan span = dateTime.TimeOfDay; string userName = User.Identity.Name; int advisor, student; if ("advisor" == role) { advisor = (from advisors in dbconDate.AdvisorTables.Local where advisors.AdvisorUserName == userName select advisors.AdvisorID).First(); student = Convert.ToInt32(StudentsView.SelectedRow.Cells[1].Text); } else { advisor = (from students in dbconDate.StudentTables.Local where students.StudentUserName == userName select students.StudentAdvisorID).First(); student = (from students in dbconDate.StudentTables.Local where students.StudentUserName == userName select students.StudentID).First(); } AppointmentTable entry = new AppointmentTable { AdvisorID = advisor, AppointmentDate = Calendar1.SelectedDate, AppointmentReason = TextBox1.Text, StudentID = student, AppointmentTime = span, }; AdvisorTable advisorEntry = dbconDate.AdvisorTables.Find(advisor); StudentTable studentEntry = dbconDate.StudentTables.Find(student); string studentEmail, advisorEmail; if ("advisor" == role) { advisorEmail = (from advisors in dbconDate.AdvisorTables.Local where advisors.AdvisorUserName == userName join user in dbconDate.UserTables.Local on advisors.AdvisorUserName equals user.UserName select user.UserEmail).First(); studentEmail = StudentsView.SelectedRow.Cells[3].Text; } else { studentEmail = (from students in dbconDate.StudentTables.Local where students.StudentUserName == userName join user in dbconDate.UserTables.Local on students.StudentUserName equals user.UserName select user.UserEmail).First(); advisorEmail = (from students in dbconDate.StudentTables.Local where students.StudentUserName == userName join advisors in dbconDate.AdvisorTables.Local on students.StudentAdvisorID equals advisors.AdvisorID join user in dbconDate.UserTables.Local on advisors.AdvisorUserName equals user.UserName select user.UserEmail).First(); } DateTime holdTime = DateTime.Today.Add(span); string displayTime = holdTime.ToString("hh:mm tt"); string emailMessage = "Appointment date and Time: " + Calendar1.SelectedDate.ToShortDateString() + " " + displayTime + " \nAppointment Reason: " + TextBox1.Text; MessagesTable message; if ("advisor" == role) { message = new MessagesTable { EmailTime = DateTime.Now.TimeOfDay, EmailDate = DateTime.Today, EmailTo = studentEmail, EmailFrom = advisorEmail, EmailText = emailMessage }; } else { message = new MessagesTable { EmailTime = DateTime.Now.TimeOfDay, EmailDate = DateTime.Today, EmailTo = advisorEmail, EmailFrom = studentEmail, EmailText = emailMessage }; } dbconDate.MessagesTables.Add(message); dbconDate.SaveChanges(); dbconDate.AppointmentTables.Add(entry); dbconDate.SaveChanges(); Response.Redirect(ResolveUrl("Student_Home.aspx")); }