繁体   English   中英

如何使用ASP.NET,C#和GMail发送电子邮件

[英]How to send email using ASP.NET, C# and GMail

我尝试使用GMail SMTP发送电子邮件,并按照其他各种问题的指南进行操作,但仍然无法从我的GMail帐户发送电子邮件。

这是我正在使用的代码:

protected void emailSend_Click(object sender, EventArgs e)
        {
            var fromAddress = new MailAddress(inputEmail.Text, inputName.Text);
            var toAddress = new MailAddress("spikey666@live.co.uk", "Liane Stevenson");
            const string fromPassword = "*********";
            const string subject = "Web Dev Wolf Message";
            var body = inputMessage.Text;

            var smtp = new SmtpClient
            {
                Host = "smtp.gmail.com",
                Port = 587,
                EnableSsl = true,
                DeliveryMethod = SmtpDeliveryMethod.Network,
                Credentials = new NetworkCredential("webdevelopwolf@gmail.com", fromPassword),
                Timeout = 20000
            };
            using (var message = new MailMessage(fromAddress, toAddress)
            {
                Subject = subject,
                Body = body
            })
            {
                smtp.Send(message);
            }
        }

到目前为止,我已经检查了以下内容:

  1. 在GMail上打开不太安全的应用
  2. 检查Gmail用户名和密码是否正确
  3. 调试并检查所有文本字段均具有值并已加载到变量中
  4. 检查Gmail帮助建议的其他端口号
  5. 在Gmail上启用POP / IMAP功能

还有什么我可能会想念的吗?

在调用SmtpClient.Send()之前,添加:

smtp.UseDefaultCredentials = false;

根据MSDN SmtpClient页面 ,默认情况下UseDefaultCredentials设置为false,但是似乎某个地方将其设置为true。 发送消息之前,将其显式设置为false,并且应该全部设置好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM