Добрый день, я надеюсь, что кто-то может мне помочь. Я пробовал все другие решения, которые мог найти, но они, похоже, не работают. В моем веб-приложении есть функция, которая позволяет нашим клиентам отправлять почту сотруднику, настройки почтового сервера сохраняются в таблице в базе данных SQL. Это отлично работает для всех клиентов, не использующих Office 365 для своей почты, теперь у нас есть несколько клиентов, работающих с Office 365, и при попытке отправки почты возникает ошибка «SMTP-серверу требуется безопасное соединение». как уже упоминалось, это отлично работает, если детали smtp не smtp.office365.com
Это код в функции для отправки почты
Dim msg1 As MailMessage = New MailMessage()
Dim mailserver As SmtpClient = New SmtpClient()
Dim attachFile As Attachment
Try
msg1.From = New MailAddress("*@*.onmicrosoft.com", "Company")
msg1.To.Add(New MailAddress("To@mail.com", "UserName"))
msg1.Subject = "Payslip"
For Each sFile As String In sFileNames
attachFile = New Attachment(sFile)
msg1.Attachments.Add(attachFile)
Next
msg1.Body = sMsgBody
msg1.Sender = msg1.From
mailserver.DeliveryMethod = SmtpDeliveryMethod.Network
mailserver.Host = "smtp.office365.com"
mailserver.UseDefaultCredentials = False
mailserver.Credentials = New System.Net.NetworkCredential("*@*.onmicrosoft.com", "Password")
mailserver.Port = 587
mailserver.EnableSsl = True
mailserver.Send(msg1)
bMailSend = True
Catch ex As Exception
bMailSend = False
sErrorMsg = ex.Message
Finally
msg1.Attachments.Dispose()
msg1 = Nothing
mailserver = Nothing
If Not IsNothing(attachFile) Then attachFile.Dispose() : attachFile = Nothing
End Try