我正在一个项目中工作,我将从数据库中检索用户的密码并将其邮寄到用户的电子邮件ID。为此我使用SMTP协议。但我无法从我的应用程序发送邮件。 我在我工作的公司使用代理网络。 我认为使用代理网络是发送电子邮件时出错的原因。 是否存在通过SMTP协议从代理网络发送电子邮件的备用解决方案。
使用的代码。
MailMessage mm = new MailMessage("sender@gmail.com", txtEmail.Text.Trim());
mm.Subject = "Password Recovery";
mm.Body = string.Format("Hi {0},<br /><br />Your password is {1}.<br /><br />Thank You.", username, password);
mm.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.EnableSsl = true;
NetworkCredential NetworkCred = new NetworkCredential();
NetworkCred.UserName = "sender@gmail.com";
NetworkCred.Password = "senderpassword";
smtp.UseDefaultCredentials = true;
smtp.Credentials = NetworkCred;
smtp.Port = 587;
smtp.Send(mm);
lblMessage.ForeColor = Color.Green;
lblMessage.Text = "Password has been sent to your email address.";
例外图片
答案 0 :(得分:0)
您可以设置WebRequest
WebRequest.DefaultWebProxy = new WebProxy("127.0.0.1",8580);