使用Office 365从Web应用程序发送邮件

时间:2015-03-11 09:50:55

标签: office365 exchangewebservices

我正在尝试在我们的Web应用程序中使用Outlook SMTP设置向用户发送邮件。邮件没有到达任何收件人,但我也没有收到任何应用程序错误。我正在web.config中配置邮件设置,如下所示:

<smtp deliveryMethod="Network" from="me@mynetwork.com">
        <network defaultCredentials="false" host="smtp.office365.com" port="587" userName="me@mynetwork.com" password="SuperSecret123(not real)" enableSsl="true"/>
      </smtp>

发送邮件的代码如下:

var C = new SmtpClient();
            var M = new MailMessage(ConfigurationManager.AppSettings["fromemail"],to,subject,message);
            M.IsBodyHtml = true;
            C.Send(M);

ConfigurationManager.AppSettings [“fromemail”]与我的邮件地址相同。所有传递的变量都应该是它们。如果我为测试gmail帐户更换我的邮件设置,它可以工作。这导致我假设我被垃圾邮件,但我无法确认这一点,因为我的测试邮件帐户都没有垃圾邮件文件夹中的邮件,所以我认为他们在发送邮件之前已经被他们收到了麻烦

此外,我正在使用GMail帐户进行测试,因此我无法继续使用Office 365特定解决方案。

3 个答案:

答案 0 :(得分:1)

Juann,

考虑使用EWS(Exchange Web服务)发送电子邮件。有关详细信息,请参阅EWS Managed API, EWS, and web services in Exchange

答案 1 :(得分:1)

此外,对于Office 365,您还可以考虑使用Mail REST API。

https://msdn.microsoft.com/office/office365/APi/mail-rest-operations#MessageoperationsSendmessages

答案 2 :(得分:0)

FROM邮件地址必须是Office 365中的现有地址。我经常设置一个中继到Office 365的SMTP服务器,然后我可以查看本地SMTP日志中的错误。