表单正在发送,但问题是未显示Success消息,即使ex.Message值为Null,它应该打印“表单已成功提交”。但事实并非如此。
当ex.Message不是Null时...错误消息正在工作它打印“错误提交消息。”
需要帮助,提前致谢!
Controller.cs
if (!ModelState.IsValid)
return CurrentUmbracoPage();
MailMessage message = new MailMessage();
message.To.Add("test@gmail.com");
message.Subject = "New Contact request";
message.From = new System.Net.Mail.MailAddress(model.Email, model.Name);
message.Body = model.Message;
SmtpClient smtp = new SmtpClient("mail.domain.com", 26);
try
{
smtp.Send(message);
}
catch (Exception ex)
{
if (ex.Message == null)
{
ViewBag.Success = "Form submitted successfully.";
}
else {
ViewBag.ErrorMessage = "Error submiting message.";
}
return CurrentUmbracoPage();
}
答案 0 :(得分:0)
如果成功发送电子邮件,则无法捕获任何异常,这可能是您的消息未显示的原因。
相反,在.Send之后将该消息移动到try块,应该这样做。
编辑:另外,我相信你的return语句应该移到try-catch块之外。