This is the sample project which i have created and the below is the aspx code
<form id="form1" runat="server">
<div>
<asp:DropDownList ID='ddlEmployeeId' runat="server">
</asp:DropDownList>
<asp:Button ID="btnSendEmail" runat="server" Text="Send Email" OnClick="OnSendEmailClicked" />
</div>
</form>
protected void Page_Load(object sender, EventArgs e)
{
ddlEmployeeId.DataSource = GetData("SELECT ecode,empname FROM Leaves");
ddlEmployeeId.DataTextField = "empname";
ddlEmployeeId.DataValueField = "ecode";
ddlEmployeeId.DataBind();
}
protected void OnSendEmailClicked(object sender, EventArgs e)
{
DataTable dataTable = new DataTable();
dataTable = GetData("SELECT ecode,empname,Department,pl,sl,lop,totdays,depthead FROM Leaves WHERE ecode='" + ddlEmployeeId.SelectedItem.Value + "'");
string recepientEmail = dataTable.Rows[0]["depthead"].ToString();
string body = "<br /><br />Leave Application<br /> EmpCode: " + dataTable.Rows[0]["ecode"].ToString() + "<br /> Employee Name: " + dataTable.Rows[0]["empName"].ToString() + "<br />Department: " + dataTable.Rows[0]["Department"].ToString() + "<br />PL: " + dataTable.Rows[0]["pl"].ToString() + "<br />SL: " + dataTable.Rows[0]["sl"].ToString() + "<br />LOP: " + dataTable.Rows[0]["lop"].ToString() + "<br />Total Days: " + dataTable.Rows[0]["totdays"].ToString() + "";
string subject = "Leave Application";
SendEmail(recepientEmail, subject, body);
}
private DataTable GetData(string query)
{
string connectionString = ConfigurationManager.ConnectionStrings["MyCon"].ConnectionString;
DataTable dataTable = new DataTable();
SqlConnection sqlconnection = new SqlConnection();
sqlconnection.ConnectionString = connectionString;
sqlconnection.Open();
SqlCommand sqlCommand = new SqlCommand(query, sqlconnection);
SqlDataReader sqlDataReader = sqlCommand.ExecuteReader();
dataTable.Load(sqlDataReader);
sqlconnection.Close();
return dataTable;
}
public static void SendEmail(string recepientEmail, string subject, string body)
{
using (MailMessage mm = new MailMessage())
{
string fromEmailAddress = "Youremail@gmail.com";
mm.From = new MailAddress(fromEmailAddress);
mm.To.Add(new MailAddress(recepientEmail));
mm.Subject = subject;
mm.Body = body;
mm.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.EnableSsl = true;
System.Net.NetworkCredential networkCred = new System.Net.NetworkCredential();
networkCred.UserName = fromEmailAddress;
networkCred.Password = "your gmail password";
smtp.UseDefaultCredentials = true;
smtp.Credentials = networkCred;
smtp.Port = 587;
smtp.Send(mm);
}
}
You will also have to use this NameSpace
using System.Net.Mail;
and check whether it works