Asp.net 捕获联系人表单中的异常
我将在asp.NETMVC4中创建表单联系人。我还没有在html和控制器的代码形式。他看起来像:Asp.net 捕获联系人表单中的异常,asp.net,asp.net-mvc,asp.net-mvc-4,Asp.net,Asp.net Mvc,Asp.net Mvc 4,我将在asp.NETMVC4中创建表单联系人。我还没有在html和控制器的代码形式。他看起来像: [HttpPost] public ActionResult Kontakt(KontaktModel k) { if (ModelState.IsValid) { try { MailMessage msg = new MailMessage();
[HttpPost]
public ActionResult Kontakt(KontaktModel k)
{
if (ModelState.IsValid)
{
try
{
MailMessage msg = new MailMessage();
SmtpClient smtp = new SmtpClient();
MailAddress from = new MailAddress(k.Mail.ToString());
StringBuilder sb = new StringBuilder();
msg.To.Add("myemail@gmail.com");
msg.Subject = k.Temat.ToString();
msg.IsBodyHtml = false;
smtp.Host = "smtp.gmail.com";
smtp.Port = 587;
sb.Append("Nick / Imię i nazwisko: " + k.Name);
sb.Append(Environment.NewLine);
sb.Append("Typ problemu: " + k.TypProblemu);
sb.Append(Environment.NewLine);
sb.Append("Treść:");
sb.Append(Environment.NewLine);
sb.Append(k.Tresc);
msg.Body = sb.ToString();
smtp.Send(msg);
msg.Dispose();
return View("SUCCESS");
}
catch(Exception)
{
return View("Error");
}
}
return View();
}
}
但当我点击按钮app return Error.cshtml时。我有一个问题,我如何知道如何捕获异常?我不知道为什么它不起作用。有什么想法吗?答案应该是获取异常消息并放入ViewBag.Message中,然后在Error.cshtml视图中显示它 错误: @查看包。留言 但对异常和异常处理知之甚少是好的。如果只声明一个try-catch并且发生异常,那么它将进入catch内部,如果执行try-catch(异常)则情况相同如果您想了解发生异常的更多详细信息,可以声明一个变量,例如:
try{
///code
}catch(Exception e){}
然后您可以查看变量内部的更多细节
好的做法是了解您可以接收和处理哪种类型的异常,这里有一个链接可以很好地解释
例如:
try
{
//code
}
catch(Exception c)
{
ViewBag.Message = c.Message
return View("ERROR");
}