私はModelState.IsValidをチェックする事前アクションWeb APIフックを持っています。 ModelStateが有効でない場合、私はそのアクションを実行せずにただちにメッセージを返します。どのように私はこれを正確に行うのですか?Web Api - OnActionExecutingフィルタから直接Webパイプラインを停止する方法
public class ValidateModelStateAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(System.Web.Http.Controllers.HttpActionContext actionContext) {
if (!actionContext.ModelState.IsValid)
{
var msg = actionContext.Request.CreateErrorResponse(HttpStatusCode.BadRequest, actionContext.ModelState);
// Now What?
}
base.OnActionExecuting(actionContext);
}
}
私は参照してください、私はその後、ベースを呼び出すかどうか?私が本当に望むのは、すべてのプリアクションフィルタが動作するだけで、アクション自体は実行されないということです。そのようにすれば、どのロギングフィルタもまだ実行されます。 –
はい、 'base'を呼び出すことができます –