我想向用户发送NewsLetter电子邮件。
我这样做了:
public ActionResult SendNewsLetter()
{
_userMailer.NewsLetter().Send();
return View();
}
并在userMailer类中:
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>
但我很惊讶为什么我不能向其他电子邮件发送电子邮件?
有人有任何想法吗?
答案 0 :(得分:1)
您遇到的错误消息根本与MVCMailer无关。我会联系您尝试使用的SMTP服务器的系统管理员,看看是否允许您使用您要进行身份验证的hello@mydomain.com
用户,以便将电子邮件发送到{{1}的值}。 Web服务器使用的许多SMTP服务器通常会对电子邮件设置限制或限制,以防止发送垃圾邮件。