This is a web based application that allows registered users to store appointments in web. The first advantage with this is they can access their appointments irrespective of the physical location, once they have access to Internet. The other major advantage of this application is; it notifies users about the appointments, if users want notification.
The entire application is built with .Net and used the following technologies of .Net.
The following are the major operations in this application.
- Asp.Net 3.5
- C# Language
- SQL Server 2005
- Visual Studio.NET 2008
- Layered Architecture with Presentation Layer and Data Access Layer
- All database manipulations are done with stored procedures.
- Stored procedures are accessed using classes in DAL.
- ObjectDataSource is used in presentation layer to talk to DAL.
- GridView, FormView, TreeView, Calendar and other core controls are used for interface.
- Membership and login controls are used to implement security.
- Master page and themes are used
- Site navigation is done using Site Map.
- ADO.NET is used to access database
- User Registration
- Password Recovery
- Change password
- List of upcoming appointments
- Adding a new appointment
- Searching for appointments
- List of all appointments
- List of appointments by date
- List of users of the system
- Deleting an existing appointment
- Editing details of an existing appointment
Steps to download, deploy and run this project
The following are the steps to be taken to run the existing part of the application. This
project makes use of membership feature of ASP.NET. The download contains all tables and stored procedures created by us as well as Asp.net.
So all that you have to do is download, unzip, open project in Visual Studio.Net and run login.aspx file. Here are the steps given below:
- Download appointments.rar and unzip it into any directory in your system.
For example, if you extract to c:\ then it will create a directory c:\appointments.
- Open Visual Studio.NET 2008 or Visual Web Developer 2008.
- Open the project from the directory into which you extracted project. For example, c:\appointments
- Go to Solution Explorer and make login.aspx the startup page.
- Run project from Visual Studio.NET 2008 or Visual Web Developer 2008.
- You should see login.aspx page.
- Create new user using registration page and then login with that user name
- Test the rest of the options.
Appointments Administrator Application
The other application that is related to this requirement is notification application, which is run for every one hour. It finds out whether
there are any appointments that need notification and sends mails to concerned users.
Here are the steps related to this project.
- Create a new project using File->New -> Project. Select
Visual C# as the language and Console Application as the type of the project.
- Enter name as appointmentsadmin
- Rename Program.cs to AppointmentsAdmin.cs and
Program class to AppointmentsAdmin
- Write the following code in Main() method of AppointmentsAdmin
// program assumes database ASPNETDB.MDF at c:\appointments\app_data folder. If that is not the case, change the path in the code.
// It expects database to have GetAppointmentsToNotify stored
procedure, which retrieves appointments that are to be notified.
static void Main(string args)
Console.WriteLine("Sending Appointment Reminders...");
Thread t = new Thread(SendMails);
public static void SendMails()
// connect to database
SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\appointments\app_data\ASPNETDB.MDF;Integrated Security=True;User Instance=True");
SqlCommand cmd = new SqlCommand("GetAppointmentsToNotify", con);
cmd.CommandType = CommandType.StoredProcedure;
SqlDataReader dr = cmd.ExecuteReader();
// send mail
MailMessage m = new MailMessage();
m.From = new MailAddress("email@example.com"); // change from address accordingly
m.Subject = "Appointment Reminder";
m.IsBodyHtml = true;
m.Body = "Hi" + dr["username"] + "<p/> This is to remind you about the following appointment.<p/>"
+ "Title : " + dr["title"] + "<p/>" + "Appointment Date : " + dr["appdate"] + "<p/>Admin,<br/> Appointments.Com";
SmtpClient server = new SmtpClient("classroom"); // change server name accordingly
Console.WriteLine("Could not send mail to " + dr["email"]);
catch (Exception ex)
Console.WriteLine("Sent reminders at : " + DateTime.Now);
Thread.Sleep(1000 * 60 * 60); // 60 min
- Build the project and run appointmentsadmin.exe file from
bin\Debug directory. It starts but never ends. It sends mails for every 1 hour. It uses an exclusive thread that wakes up for every one hour and sends messages.
appointments and project
Go FTP FREE