I'm getting an error while sending email through asp.net SMTP server. It says operation has timed out. How to overcome the exception?
try
{
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient();
mail.From = new MailAddress("mymailid@hotmail.com");
mail.To.Add("yourmailid@gmail.com");
mail.Subject = "Verify your account";
mail.Body = "Your OTP for your account verification is "+OTP.ToString()+". Enter your OTP in verification window.";
mail.IsBodyHtml = true;
SmtpServer.UseDefaultCredentials = false;
SmtpServer.Timeout = 20000;
SmtpServer.Send(mail);
errmsgShow.Text = "Mail sent";
}
catch (Exception e)
{
//string errMsg = "alert('OTP sending failed. Error: " +e.ToString()+ "')";
//ScriptManager.RegisterClientScriptBlock(Page, typeof(Page), "ClientScript", errMsg, true);
//Console.WriteLine(e.Message.ToString());
errmsgShow.Text = e.ToString();
}
I have also included below in the web.config
<system.net>
<mailSettings>
<smtp deliveryMethod="Network">
<network host="smtp.live.com" port="25" userName="mymailid@hotmail.com" password="password" enableSsl="true"/>
</smtp>
</mailSettings>
</system.net>
Try removing SmtpServer.Timeout = 20000;
.
Update:
i see you have SmtpClient SmtpServer = new SmtpClient();
.
SmtpServer is a property of SmtpMail SmtpMail.SmtpServer
. Try changing the variable name, something like
SmtpClient mailClient = new SmtpClient();
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.