У меня проблема с отправкой электронной почты через SMTP Office 365 и MailKit. Исключение я получаю:MailKit C# SmtpClient.Connect() to Office 365, генерирующий исключение: «Существующее соединение было принудительно закрыто удаленным хостом»
Необработанное исключение: System.IO.IOException: Не удается прочитать данные из транспортного соединения: существующее соединение было принудительно закрыто удаленным узлом.
System.Net.Sockets.SocketException: Существующее соединение было принудительно закрыто удаленным узлом
https://github.com/jstedfast/MailKit
Код:
var smtpClient = new SmtpClient();
smtpClient.Connect("smtp.office365.com", 587, true);
настройки Microsoft Office 365 должна быть правильной :
Странно, что если я использую следующее, все будет работать, хотя Office 365 говорит, что требуется SSL.
smtpClient.Connect("smtp.office365.com", 587, false);
Просто комментируя, чтобы подтвердить, что это правильное решение , SMTP действительно использует только SSL-подключенные соединения на порту 465. Порт 2 и 587 используют StartTLS, если они вообще используют SSL. Это, к сожалению, обычно не объясняется в руководствах по настройке. – jstedfast
Это просто спасло меня. Я сделал ошибку, читая документацию :) –