1

我想使用我们组织的 O365 电子邮件帐户之一从我的 .NET 4.6.1 应用程序发送电子邮件。我想知道是否有可以帮助我的 Nuget 包。

Microsoft.Office365.OutlookServices看起来有点过时,项目页面上的评论并不能激发信心。

Microsoft.Graph似乎较新,但它的代码示例使用预发布的Microsoft Authentication Library (MSAL),它说它不适合生产。也许我可以将Active Directory 身份验证库 .NET (ADAL)与 Graph 结合使用?

4

2 回答 2

1

图形库是官方的 SDK 。它是从官方示例和 SDK页面链接的。

尽管 MSAL 在NuGet页面上被描述为预发布,但Github 项目页面将 Nuget 描述为来自稳定分支。

您使用它的里程可能会有所不同,但是在我的项目中,我对 1.0.304142221-alpha NuGet 没有任何问题。

微软的某个人可能会对此有所了解,也许会指出非预览版 NuGet 的发布日期?

于 2017-05-07T11:06:47.703 回答
0

对于仅发送邮件,您可以像这样使用 System.Net.Mail:

var mailMessage = new MailMessage();
mailMessage.To.Add(new MailAddress(RECEIVER_MAIL_ADDRESS));
mailMessage.From = new MailAddress(SENDER_MAIL_ADDRESS, SENDER_NAME);
mailMessage.Subject = SUBJECT;
mailMessage.Body = BODY; 
mailMessage.IsBodyHtml = true;

using (var smtp = new SmtpClient("smtp.office365.com", 587))
{
    var credential = new NetworkCredential
    {
        UserName = USERNAME,
        Password = PASSWORD,
        Domain = DOMAIN_OPTIONAL
    };

    smtp.Credentials = credential;
    smtp.EnableSsl = true;
    smtp.TargetName = "";

    await smtp.SendMailAsync(mailMessage);
}
于 2017-09-15T10:49:36.523 回答