C# 使用Outlook 365发送邮件

C# 使用Outlook 365发送邮件,c#,smtp,office365,C#,Smtp,Office365,我正在尝试通过Outlook 365发送电子邮件。我得到以下错误。 SMTP错误:[MustIssueStartLSFirst] 消息:SMTP服务器需要安全连接,或者客户端未通过身份验证 我的代码: System.Net.NetworkCredential cred = new System.Net.NetworkCredential(mailInfo.FromAddr, mailInfo.Password); SmtpClient mailClient = new SmtpClien

我正在尝试通过Outlook 365发送电子邮件。我得到以下错误。 SMTP错误:[MustIssueStartLSFirst] 消息:SMTP服务器需要安全连接,或者客户端未通过身份验证

我的代码:

System.Net.NetworkCredential cred = new System.Net.NetworkCredential(mailInfo.FromAddr, mailInfo.Password);
    SmtpClient mailClient = new SmtpClient(mailInfo.Server) {
        Port = mailInfo.Port,
        EnableSsl = true, //mailInfo.SSL,
        DeliveryMethod = SmtpDeliveryMethod.Network,
        UseDefaultCredentials = false,
        Credentials = cred,
        TargetName = "STARTTLS/smtp.office365.com"
    };


MailMessage message = new MailMessage {
    From = new MailAddress(mailInfo.FromAddr, mailInfo.FromName),
    Subject = "Manifest Processor Shipment Report - Manifest: " + shipment.ManifestNumber,
    Body = BuildManifestEmailBody(shipment),
    Priority = MailPriority.High,
    IsBodyHtml = true
};
奇怪的是,我有一个使用相同代码运行的小测试程序。

请参见MSDN中的。Outlook Mail API允许您在Office 365或Exchange Online中读取、创建和发送邮件和附件,查看和响应事件邮件,以及管理用户邮箱中的文件夹

你也会发现EWS很有帮助。有关更多信息,请参阅