我正在尝试通过asp.net mvc2发送电子邮件,在我们公司的邮件服务器上运行得很好。
然而,我们希望改用我们客户的BPOS帐户。这在本地运行良好,但当部署到azure时,我们会收到一些超时错误。
有没有人能确认我的以下内容是正确的?
SmtpClient smtp = new SmtpClient("Smtp.mail.emea.microsoftonline.com");
smtp.Port = 587;
smtp.EnableSsl = true;
smtp.Credentials = new NetworkCredential("BPOS-EMAIL", "BPOS-PASSWORD");此外,有人知道为什么它在本地运行时有效,但在azure上运行时却不行吗?
发布于 2010-08-31 07:11:11
您是否正在完全信任模式下运行web角色?默认情况下,SmtpClient将在ASP中信任下执行。在该模型下,Smtp仅被允许通过Azure中的端口25进行通信。
如果需要使用SmtpClient.Port属性,则需要在完全信任下运行该角色。
这是通过在服务定义中设置Web角色的enableNativeCodeExecution属性来实现的。
<WebRole name="WebRole1" enableNativeCodeExecution="true">这是我能想到的唯一一件事。如果不是这样,您可以发布错误日志,这可能会显示有关问题的更多详细信息。
https://stackoverflow.com/questions/3601046
复制相似问题