【问题标题】:Unrecognised attribute 'enableSsl' in .NET v4.0.NET v4.0 中无法识别的属性“enableSsl”
【发布时间】:2016-07-05 02:02:38
【问题描述】:

我们已经在测试中运行了一段时间的新系统,并将电子邮件创建到一个文件夹中,这样它们就不会意外地发送给客户。现在我们已开启实时电子邮件,但我们遇到了发送问题。

我正在使用 ActionMailer.NET,创建和发送电子邮件的代码如下。我不会包含视图:

EmailResult x = new EmailController().EmailWorkOrderForApprovalToClient(model);
            System.Net.Mail.Attachment file = new System.Net.Mail.Attachment(FilePath);
            x.Mail.Attachments.Add(file);
            x.Deliver();

这给出了错误

SMTP 服务器需要安全连接,或者客户端没有 认证。服务器响应为:5.7.57 SMTP;客户不是 在 MAIL FROM 期间通过身份验证发送匿名邮件

web.config 如下所示:

  <system.net>
<mailSettings>
  <smtp deliveryMethod="Network" from="ClientServices@topupconsultants.com">
    <specifiedPickupDirectory pickupDirectoryLocation="" />
    <network defaultCredentials="false" host="smtp.office365.com" password="secret" port="587" userName="ClientServices@myco.com" />
  </smtp>
</mailSettings>

我的假设是 enableSsl="true" 需要添加到网络线路,但是当我这样做并尝试转到 IIS 中站点的 SMTP 电子邮件部分时,我收到错误:

无法识别的属性“enableSsl”

我对 IIS 不是很感兴趣,但我检查了应用程序池及其 .NET CLR 版本是 4.0.30319。我还检查了服务器上是否安装了 .NET v4.5。

这让我感到困惑,我希望我不必将我的代码完全更改为允许我在那时指定 SSL 的方法。

【问题讨论】:

    标签: email iis smtp office365 actionmailer.net


    【解决方案1】:

    在这里回答我自己的问题,基本上答案是:“不要相信错误信息”。在我尝试的所有配置中,当它告诉我这是不可接受的时,我相信错误消息。不过,我还是试了一下,它在发送时使用了 enableSsl 属性,这样就可以成功连接到 Office 365。

    有点烦人的 IIS 错误,我会在一周内忘记,但现在很烦人。

    【讨论】:

      【解决方案2】:

      这是 IIS 上的问题,无需担心此错误消息 SmtpClient 对象 enableSsl 值被映射 这个愚蠢的问题浪费了我很多时间:D

      【讨论】:

        猜你喜欢
        • 2022-01-15
        • 2012-08-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-15
        • 1970-01-01
        相关资源
        最近更新 更多