0

我正在使用 IIS7 在 asp.net 中通过 C# 发送电子邮件。但我无法修复错误。

我什至无法向这条路径发送消息

C:\inetpub\mailroot\队列

这是我用过的最简单的代码

MailMessage m = new MailMessage();
    m.From = TextBox1.Text;
    m.To = TextBox2.Text;
    m.Subject = TextBox3.Text;
    m.Body = TextBox4.Text;
    SmtpMail.SmtpServer = "localhost"; //your real server goes here
    SmtpMail.Send(m);

注意:我手动创建了这个路径,是不是错了?还是应该自动创建?

请帮忙!

4

2 回答 2

0

也许是缺少 SmtpCredentials?正如之前的演讲者所说,SmtpServer 真的是 localhost,这意味着您的机器上有一个 smtpserver?

我已经完成了一个 SMTP 邮件,以便从我正在运行的程序中发送一些电子邮件,也许你可以在其中找到一些可以帮助你的东西?

它看起来像这样。

public class Email
{
    public Email(string recieverAdress)
    {
        mail = new MailMessage(senderAdress, recieverAdress);
    }

    private readonly MailMessage mail;
    private readonly SmtpClient smtpClient = new SmtpClient("smtp.domain.com", port);
    private readonly NetworkCredential credential = new NetworkCredential("username", "password");

    public void SendMail(string subject, string textInBody)
    {
        mail.Subject = DateTime.Now + " " + subject;
        mail.Body = textInBody;
        smtpClient.Credentials = credential;
        smtpClient.Send(mail);
    }
}
于 2012-08-03T12:18:11.317 回答
0

如果您手动创建了路径,那么您的机器上没有安装 SMTP 服务(假设您打算使用它而不是第三方 SMTP 服务器)。

您可以通过查看服务列表来验证这一点(我相信它从简单邮件传输开始......)。

于 2012-08-03T03:21:47.430 回答