我想向用户发送NewsLetter电子邮件。
我这样做过:
public ActionResult SendNewsLetter()
{
_userMailer.NewsLetter().Send();
return View();
}
在用户邮件类中:
public virtual MvcMailMessage NewsLetter(string userEmail)
{
//ViewBag.Data = someObject;
return Populate(x =>
{
x.Subject = "NewsLetter";
x.ViewName = "NewsLetter";
x.To.Add("hello@mydomain.mobi");
x.Bcc.Add(userEmail);
});
}
我将提交的时事通讯电子邮件添加到密件抄送。
但是当我发送它时,我遇到了这个问题:
命令顺序错误。服务器响应为:此邮件服务器 尝试发送到非本地电子邮件时需要身份验证 地址。 请检查您的邮件客户端设置或联系您的 管理员验证是否为此定义了域或地址 服务器。
如果删除 bbc,我可以正常发送电子邮件,因为我已在 web.config 中为 hello@mydomain.mobi 提供了身份验证。
<system.net>
<mailSettings>
<!-- Method#1: Configure smtp server credentials --><smtp deliveryMethod="Network" from="hello@mydomain.com">
<network host="mydomain.com" port="25" userName="hello@mydomain.com" password="123456" enableSsl="false" />
</smtp>
</mailSettings>
但我惊讶为什么我不能向其他电子邮件发送电子邮件?
有人知道吗?
您遇到的错误消息与 MVCMailer 完全无关。我会联系您尝试使用的 SMTP 服务器的系统管理员,看看您是否被允许使用您进行身份验证的hello@mydomain.com
用户向值发送电子邮件 userEmail
。Web 服务器使用的许多 SMTP 服务器通常会对电子邮件进行限制或限制,以防止垃圾邮件。