从ASMX Web服务发送电子邮件

时间:2011-03-04 18:04:40

标签: c# .net asmx

最近有人在这个网站上回答我,这个方法可以从.net应用程序发送电子邮件:

public static void SendEmail(bool isHTML, string toEmail, string fromEmail, string subject, string message)
{
    var sm = new SmtpClient("smtp.mail.ru");
    sm.Credentials = new NetworkCredential("MyLogin", "MyPass");
    var m = new MailMessage(fromEmail, toEmail) { Subject = subject, Body = message };
    if (isHTML)
    {
        m.IsBodyHtml = true;
    }
    sm.Send(m); // SmtpException
}

确实如此。但是现在我想从Asp.Net WebService中使用这个方法,但是我在最后一个字符串中有SmtpException。为什么?我是否从网络服务发送电子邮件。

1 个答案:

答案 0 :(得分:1)

所以问题不在于您的代码,而是由于某种原因与SMTP服务器的交易失败。如果您有权访问SMTP服务器,请检查其日志。否则你可能不得不使用像WireShark这样的嗅探器来解决它。

要验证这一点,您可以尝试使用其他邮件服务器,假设您有权访问该服务器,它应该正确发送邮件。