.NET v4.0中无法识别的属性“enableSsl”

时间:2016-03-18 10:44:11

标签: email iis smtp office365 actionmailer.net

我们已经在测试中运行了一个新系统,并在一个文件夹中创建了电子邮件,因此他们不会意外地向客户端发送邮件。现在我们已经开启了实时电子邮件,我们遇到了发送问题。

我正在使用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的方法。

2 个答案:

答案 0 :(得分:3)

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

在一周内我会忘记的IIS漏洞略有刺激,但现在非常烦人。

答案 1 :(得分:0)

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