Сбой отправки почты.
привет разработчикам!!
Недавно я работаю над отправкой почты с помощью кодирования c#, и я попытался отправить почту с помощью кодирования c# на платформе visual studio, и это работает совершенно нормально в моем локальном хосте visual studio. но когда я запускаю тот же код на другом хостинговом сайте, например myASP.NET или Somee.com в тот раз этот код получил ошибку.
ошибка типа (если я использовал smtp.gmail.com тогда ошибка вроде
The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Authentication Required. Learn more at) и (если бы я использовал smtp.somee.com затем ошибка генерируется как
Failure sending mail.)
Отправка почтового кода в c# - это,
string username = ""; string password = ""; OleDbConnection con = new OleDbConnection(ConfigurationManager.ConnectionStrings["cstring"].ConnectionString); OleDbCommand cmd = new OleDbCommand("select umail, lpwd from uregister where umail=@email", con); cmd.Parameters.AddWithValue("email", txtEmail.Text); con.Open(); using(OleDbDataReader sdr = cmd.ExecuteReader()) { if (sdr.Read()) { username = sdr["umail"].ToString(); password = sdr["lpwd"].ToString(); } } con.Close(); if (!string.IsNullOrEmpty(password)) { MailMessage Msg = new MailMessage(); // Sender e-mail address. Msg.From = new MailAddress(txtEmail.Text); // Recipient e-mail address. Msg.To.Add(txtEmail.Text); Msg.Subject = "Your Password Details"; Msg.Body = ("Your Username is:" + username + "<br/><br/>" + "Your Password is:" + password); Msg.IsBodyHtml = true; // your remote SMTP server IP. SmtpClient Smtp = new SmtpClient(); Smtp.Host = ""; Smtp.Port = 587; NetworkCredential ntwd = new NetworkCredential(); ntwd.UserName = "xyz@gmail.com"; //Your Email ID ntwd.Password = "xyz123."; // Your Password Smtp.UseDefaultCredentials = false; Smtp.Credentials = ntwd; Smtp.EnableSsl = true; Smtp.Send(Msg); lbltxt.Text = "Your Password Details Sent to your mail."; // Clear the textbox valuess txtEmail.Text = ""; } else { lbltxt.Text = "The Email you entered not exists."; }
этот код не работает на хостинге сайта somee.com/myASP.NET поэтому, пожалуйста, дайте мне знать, в чем проблема в этом коде. .
Что я уже пробовал:
string username = ""; string password = ""; OleDbConnection con = new OleDbConnection(ConfigurationManager.ConnectionStrings["cstring"].ConnectionString); OleDbCommand cmd = new OleDbCommand("select umail, lpwd from uregister where umail=@email", con); cmd.Parameters.AddWithValue("email", txtEmail.Text); con.Open(); using(OleDbDataReader sdr = cmd.ExecuteReader()) { if (sdr.Read()) { username = sdr["umail"].ToString(); password = sdr["lpwd"].ToString(); } } con.Close(); if (!string.IsNullOrEmpty(password)) { MailMessage Msg = new MailMessage(); // Sender e-mail address. Msg.From = new MailAddress(txtEmail.Text); // Recipient e-mail address. Msg.To.Add(txtEmail.Text); Msg.Subject = "Your Password Details"; Msg.Body = ("Your Username is:" + username + "<br/><br/>" + "Your Password is:" + password); Msg.IsBodyHtml = true; // your remote SMTP server IP. SmtpClient Smtp = new SmtpClient(); Smtp.Host = "smtp.gmail.com"; Smtp.Port = 587; NetworkCredential ntwd = new NetworkCredential(); ntwd.UserName = "xyz@gmail.com"; //Your Email ID ntwd.Password = "xyz123."; // Your Password Smtp.UseDefaultCredentials = false; Smtp.Credentials = ntwd; Smtp.EnableSsl = true; Smtp.Send(Msg); lbltxt.Text = "Your Password Details Sent to your mail."; // Clear the textbox valuess txtEmail.Text = ""; } else { lbltxt.Text = "The Email you entered not exists."; }