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