在Umbraco发送电子邮件

时间:2013-12-11 11:12:56

标签: asp.net email razor smtp umbraco

我正在设置一个函数来发送邮件(作为订单的确认,但这是后来的事情)。

问题是邮件是从公司的交换服务器发送的,到目前为止我得到的只是连接失败。

我正在与服务器技术人员沟通,试图找出什么是错的,因为我已经有一段时间了,因为我设置了电子邮件(在cms方面)我可能犯了一个愚蠢的错误,所以也许这里有人会抓住它:)

web.config :(服务器技术指定的端口号)

(所有信息都替换为安全性的通用但一致的名称)

<system.net>
<mailSettings>
    <smtp from="info@mydomain.com">
        <network host="smtp.ourexchangeserver.dk" userName="info@mydomain.com" password="secret" port="26" />
    </smtp>
</mailSettings>

剃刀脚本测试:

      @{
    try {
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
message.To.Add("myadress@gmail.com");
message.Subject = "This is the Subject line";
message.From = new System.Net.Mail.MailAddress("info@mydomain.com");

message.Body = "This is the message body";
System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient();
smtp.Send(message);
    }
    catch(Exception ex)
            {
               <p> error: <br/> @ex.ToString() </p> 
            }
}

异常中发现错误:

 System.Net.Mail.SmtpException: Failure sending mail. --->
 System.Net.WebException: Unable to connect to the remote server --->
 System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond

提前谢谢。

2 个答案:

答案 0 :(得分:0)

请问您是否确认他们提供的是Exchange服务器端口凭据,而不是 Exchange Web服务托管API

其次,您需要根据配置使用SMTP服务器发送电子邮件时指定字段。例如

   OMsg1.Fields["http://schemas.microsoft.com/cdo/configuration/smtpserver"] = "smtp"; // ypur SMTP serner name

        OMsg1.Fields["http://schemas.microsoft.com/cdo/configuration/smtpserverport"] = 25;

和明智的一样。

请在下面找到使用C#中的SMTP发送电子邮件的链接,您可以制作它的RAZOR副本。

http://forums.asp.net/t/1602115.aspx

希望它有所帮助。

由于

答案 1 :(得分:-1)

找到以下链接,它将帮助您从UMBRACO发送邮件。发送电子邮件至razor macro

http://our.umbraco.org/forum/developers/razor/22536-Send-email-in-razor-macro