我在调用ActionMethod之前创建了通用的ActionFilter来验证所有HTTP请求。
我想过滤掉来自FormBody的参数。默认情况下,我的所有请求内容类型都是application / json。
这将使我能够调用JSON格式(非架构)验证器以向客户端回复正确的错误消息。
public class QueryStringParameterValidatorAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(HttpActionContext actionContext)
{
var args = actionContext.ActionArguments;
var parameters = actionContext.ActionDescriptor.GetParameters();//I want to filter out parameters coming from Form Body
}
}
答案 0 :(得分:2)
然后添加以下行:
foreach (var p in parameters)
{
bool HasFromBodyAttribute = p.GetCustomAttributes<FromBodyAttribute>().Count > 0;
if(HasFromBodyAttribute)
{
// code here
}
}