我們已經在測試中運行了一段時間的新系統,並創建了電子郵件到一個文件夾,這樣他們就不會意外地出現在客戶端。現在我們啓用了實時電子郵件發送功能,因此我們收到了發送問題。.NET v4.0中無法識別的屬性'enableSsl'
我使用的是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();
這給錯誤
The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.57 SMTP; Client was not authenticated to send anonymous mail during MAIL FROM
的web.config文件看起來是這樣的:
<system.net>
<mailSettings>
<smtp deliveryMethod="Network" from="[email protected]">
<specifiedPickupDirectory pickupDirectoryLocation="" />
<network defaultCredentials="false" host="smtp.office365.com" password="secret" port="587" userName="[email protected]" />
</smtp>
</mailSettings>
我的假設是,enableSsl =「true」需要添加到網絡線,但是當我這樣做,並嘗試去網站的SMTP電子郵件部分IIS,我得到的錯誤:
Unrecognized attribute 'enableSsl'
我不是IIS是熱的,但我檢查應用程序池和它的.NET CLR版本是4.0.30319。我也檢查過在服務器上安裝了.NET v4.5。
這讓我感到莫名其妙,我希望不必將我的代碼完全更改爲允許指定SSL的方法。