C# 在操作方法上使用多个筛选器属性的成本

C# 在操作方法上使用多个筛选器属性的成本,c#,asp.net-apicontroller,actionfilterattribute,actionmethod,filterattribute,C#,Asp.net Apicontroller,Actionfilterattribute,Actionmethod,Filterattribute,我们在动作方法上有几个过滤器属性- HandleExceptionAttribute:记录并返回异常情况下的InternalServerError ValidateModelAttribute:如果ModelState无效,则返回BadRequest 授权属性:简单授权属性 LogRequestAttribute:记录请求和响应 其他属性:一些其他属性,如HttpPost,Route等 我们可以在action方法本身中实现其中一些功能,但将它们保留在属性中只是为了保持action方法的干净

我们在动作方法上有几个过滤器属性-

  • HandleExceptionAttribute:记录并返回异常情况下的
    InternalServerError
  • ValidateModelAttribute:如果
    ModelState
    无效,则返回
    BadRequest
  • 授权属性:简单授权属性
  • LogRequestAttribute:记录请求和响应
  • 其他属性:一些其他属性,如
    HttpPost
    Route
我们可以在action方法本身中实现其中一些功能,但将它们保留在属性中只是为了保持action方法的干净


我想知道在单个方法上使用如此多的过滤器属性或多个操作过滤器是否会对性能产生负面影响?是否应该将其中任何一个组合到公共属性中?

Jon Skeet对您的问题@svet有一个很好的答案-该问题是关于方法过滤器属性的。Jon Skeet对您的问题@svet有一个很好的答案-该问题是关于方法过滤器属性的。