我想使用我们组织的O365电子邮件帐户从我的.NET 4.6.1应用程序发送电子邮件。我想知道是否有一个可以帮助我的Nuget包。
Microsoft.Office365.OutlookServices看起来有些过时,项目页面上的评论并没有激发人们的信心。
Microsoft.Graph似乎更新,但其代码示例使用预发布Microsoft Authentication Library (MSAL),它表示不适合生产。也许我可以将Active Directory Authentication Library .NET (ADAL)与图形结合使用?
答案 0 :(得分:1)
graph library是官方SDK。它是从official Samles and SDKs页面链接的。
即使MSAL在NuGet页面上被描述为预发布,Github project page也将Nuget描述为来自稳定分支。
你的里程可能会有所不同,但在我的项目中,我对1.0.304142221-alpha NuGet没有任何问题。
微软的某个人可能会对此有所了解,或许有一个非预览NuGet发布日期的指示?
答案 1 :(得分: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);
}