我有一个名为ErrorController
的控制器,其行为为Index
。
我正在捕获来自其他控制器的异常HomeController
,并将如下所示的异常存储在名为ExceptionDetails
public class ExceptionDetail
{
public string message { get; set; }
public string details { get; set; }
}
一旦发现异常,我会将其存储在上面显示的模型中,并希望将其发送到控制器Index
的操作ErrorController
。
我该怎么做
我尝试了以下但是它没有用。
catch (System.Exception exception)
{
exceptionDetail.details = exception.ToString();
exceptionDetail.details = exception.Message.ToString();
return RedirectToAction("Index", "Error", new { exception = exceptionDetail });
}
Index
操作如下所示,我也有一个强类型的索引视图。
public ActionResult Index(ExceptionDetail exceptionDetail)
{
return View(exceptionDetail);
}
感谢您提前提供任何帮助。
答案 0 :(得分:2)
您的方法签名是:
public ActionResult Index(ExceptionDetail exceptionDetail)
所以你的RedirectToAction应该定义一个参数" exceptionDetail' :
return RedirectToAction("Index", "Error", exceptionDetail);
答案 1 :(得分:0)
return RedirectToAction("Index", "Error", exceptionDetail);
通过这种方式,我可以在控制器Index
ErrorController
处使用模型属性