是否可以在ModelState.IsValid方法的自定义操作过滤器中检查OnActionExecuting

最佳答案

是。 ModelState是ViewData的一部分。因此,您可以使用以下命令获取它:

filterContext.Controller.ViewData.ModelState


例如,如果您想在动作执行后注入一些代码,但仅当ModelState.IsValid == true时,您可以执行以下操作:

public override void OnActionExecuted(ActionExecutedContext filterContext)
{
    if (!filterContext.Controller.ViewData.ModelState.IsValid) return;
    // do something
}

关于asp.net-mvc-3 - 在 Action 过滤器中检查ModelState,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7422514/

10-13 06:53