ASP.NET快速联系表单不起作用

时间:2011-02-07 12:25:40

标签: asp.net contact-form

我在aspx页面上有一个快速联系表单,这是无法正常工作我正在使用try / catch块以防止异常,直到现在只有catch正在工作。请帮助我使用我正在使用的代码System.Net.Mail namespace的邮件消息类.Her是代码

try
{
    MailMessage EmailMsg = new MailMessage();
    EmailMsg.From = new MailAddress(txtEmail.Text,txtName.Text);
    EmailMsg.To.Add(new MailAddress("mail address"));
    EmailMsg.Subject = "WebAssist Email form";
    EmailMsg.Body = "<html><body>This is a text<hr>Test test</body></html>";
    EmailMsg.IsBodyHtml = true;
    EmailMsg.Priority = MailPriority.Normal;
    SmtpClient MailClient = new SmtpClient("");
    MailClient.EnableSsl = true;
    MailClient.Credentials = new System.Net.NetworkCredential("","");
    MailClient.Send(EmailMsg);
    Label1.Visible = true;
    Label1.Text = "Email sent";
}
catch
{
    Label1.Visible = true;
    Label1.Text = "Your email was not sent";
}

请在网络凭据中告诉smtp构造函数中要写什么 提前谢谢

2 个答案:

答案 0 :(得分:2)

取出catch语句 - 您希望让异常传播到调用堆栈中,以便您可以找出问题所在。你现在正在做的就是隐藏它。

一旦你解决了这个问题,我建议你看一下exception handling best practices

答案 1 :(得分:1)

SmtpClient类的构造函数可以通过以下三种方式之一调用:

  1. SmtpClient() - 使用配置文件设置初始化SmtpClient类的新实例。
  2. SmtpClient(String) - 初始化使用指定SMTP服务器发送电子邮件的SmtpClient类的新实例。
  3. SmtpClient(String,Int32) - 初始化SmtpClient类的新实例,该类通过使用指定的SMTP服务器和端口发送电子邮件。
  4. 至于需要提供的实际值,这实际上是在您和SMTP服务器之间。我们无法帮助你。字符串将是服务器的名称(可能甚至只是它的IP地址),端口很可能是25,但可能是任何东西。