在MVC中发送电子邮件时,如何解决“ smtp.ServicePoint.Address引发类型为System.NotSupportedException的异常”?

时间:2019-07-12 18:32:31

标签: asp.net-mvc email smtp

我正在尝试通过MVC应用发送电子邮件。除了smtp.Send(mess)以外,其他所有东西似乎都正常。

错误描述如下:

  

smtp.ServicePoint.Address引发了System.NotSupportedException类型的异常

我的代码:

    var smtp = new SmtpClient
                    {
                        Host = "smtp.gmail.com",
                        Port = 587,
                        EnableSsl = true,
                        DeliveryMethod = SmtpDeliveryMethod.Network,
                        UseDefaultCredentials = false,
                        Credentials = new NetworkCredential(senderEmail.Address, password)
                    };
                using (var mess = new MailMessage(senderEmail, receiverEmail)
                {
                    Subject = subject,
                    Body = body
                })
                {
                    smtp.Send(mess); 
                }

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

我检查了我的项目中的 web.config 文件,发现邮件在pickupDirectoryLocation="D:\xxxxmaildrop"位置物理上大步前进,并且我的 D 驱动器中没有任何“xxxxmaildrop”文件夹。所以手动创建了一个。然后运行项目。 在该步骤之后,在给定位置创建了一封邮件,并且没有发现异常。请也试试这个解决方案,它对我有用。

<块引用>
<mailSettings>
      <smtp deliveryMethod="SpecifiedPickupDirectory" from="no-reply@xxxx.xx">
        <specifiedPickupDirectory pickupDirectoryLocation="D:\xxxxmaildrop" />
      </smtp>
</mailSettings>