14
我们在BaseController中使用OnException虚拟方法来记录我们的异常。在Controller.OnException中获取操作和操作参数
但是我们如何才能得到控制器操作和异常来自的参数呢?
我们在BaseController中使用OnException虚拟方法来记录我们的异常。在Controller.OnException中获取操作和操作参数
但是我们如何才能得到控制器操作和异常来自的参数呢?
您可以从ExceptionContext
对象中获取所有这些数据。
context.RouteData.Values
使用此代码,你可以得到查询字符串参数:
context.HttpContext.Request.QueryString
而且finnaly形式参数使用此代码,你可以得到控制,动作和所有其他路由参数
例如:
context.HttpContext.Request.Form
protected override void OnException(ExceptionContext filterContext)
{
string action = filterContext.RouteData.Values["action"].ToString();
string controller = filterContext.RouteData.Values["controller"].ToString();
}
是否有可能在ModelBinding解析它们后获取参数? – sternr
ModelBinding不应更改此数据。所以,这是可能的 – Egor4eg
我的意思是,我不希望Request.Querystring \表单数据,我想它在它的模型形式 - 我怎么能得到它? – sternr