在ASP.NET Web应用程序中发送电子邮件。 (VB.NET)

时间:2016-11-09 05:22:39

标签: asp.net vb.net email

我尝试在用户点击按钮时发送电子邮件。但是,我收到this之类的例外。

我的代码有问题吗?

Imports System.Net.Mail
Imports System.Net
Partial Class _Default Inherits System.Web.UI.Page

    Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
        Try
            Dim mailMessage As New MailMessage("group2istn@gmail.com", "ndumisosizwe@gmail.com")
            mailMessage.Subject = "Mail Body"
            mailMessage.Body = "This is a test email"
            Dim SmtpClient As New SmtpClient("smtp.gmail.com", 587)
            Dim credentials As New NetworkCredential("group2istn@gmail.com", "myPasswordHere")
            SmtpClient.Credentials = credentials

            SmtpClient.EnableSsl = True
            SmtpClient.Send(mailMessage)
            MsgBox("Email sent successfully")
        Catch ex As Exception
            MsgBox("Email Failed !  " & ex.ToString)
        End Try
    End Sub
End Class

2 个答案:

答案 0 :(得分:0)

看起来像一个安全例外。确保端口587已打开以进行通信,如果是,则默认情况下将阻止服务器。 或者它可能是阻止连接的服务器防火墙问题。

答案 1 :(得分:0)

您的代码绝对正确。某些应用和设备使用安全性较低的登录技术,这会使您的帐户更容易受到攻击。

因此,默认情况下,Gmail会阻止您从自定义应用程序访问您的电子邮件帐户。

登录您的Gmail帐户,启用访问安全性较低的应用

使用此Link登录。这会将您重定向到安全性较低的应用。只需确保已选择 trun on ,然后点击较不安全的应用附近的后退箭头。

这种方式对我也有用。有关更新信息,请参阅this