5.ASP.NET Core MVC特性

控制器特性位于Microsoft.AspNetCore.Mvc 命名空间。

描述
AcceptVerbsAttribute指定操作支持的 HTTP 方法。
ActionContextAttribute指定当创建控制器时应使用当前 ActionContext set控制器属性。该属性必须具有公共set方法。
ActionNameAttribute指定操作的名称。
ApiControllerAttribute指示类型和所有派生类型提供 HTTP API 响应。使用此特性修饰的控制器配置有功能和行为,以改进开发人员生成 API 的体验为目标。在程序集上修饰时,程序集中所有控制器都将被视为具有 API 行为的控制器。
ApiConventionMethodAttribute要应用于控制器操作的 API 约定。API 约定用于影响 ApiExplorer 的输出。ApiConventionMethodAttribute 可用于指定适用于操作的确切约定方法。 ApiConventionTypeAttribute 有关在程序集或控制器级别应用约定的详细信息。
ApiConventionTypeAttribute要应用于包含 MVC 控制器或单个控制器的程序集的 API 约定。API 约定用于影响 ApiExplorer 的输出。约定必须是静态类型。约定中的方法使用 指定的规则 与操作方法匹配,这些规则由可应用于方法名称或其参数的ApiConventionNameMatchAttribute 和 应用于参数的ApiConventionTypeMatchAttribute 指定。如果未找到指定行为的特性,则 MVC 将匹配方法名称,使用 Exact 匹配参数名称,使用 AssignableFrom 匹配参数类型。
ApiExplorerSettingsAttribute控制关联控制器类或操作方法的ApiDescription 的可见性和组名称。
AreaAttribute指定包含控制器或操作的区域。
AutoValidateAntiforgeryTokenAttribute导致为所有不安全的 HTTP 方法验证防伪标记的特性。除了 GET、HEAD、OPTIONS 和 TRACE 外,HTTP 方法还需要防伪标记。
BindAttribute此特性可用于操作参数和类型,以指示模型级别元数据。
BindPropertiesAttribute此特性为修饰控制器或 Razor Page 模型定义的所有属性启用绑定。
BindPropertyAttribute此特性可指定 IModelBinder 的模型名称或类型用于绑定关联属性。
ConsumesAttribute指定支持的请求内容类型的筛选器。ContentTypes 当存在多个匹配项时,用于选择操作。
ControllerAttribute指示将此特性应用于的类型和任何派生类型被默认控制器发现机制视为控制器,除非 NonControllerAttribute 应用于层次结构中的任何类型。
ControllerContextAttribute指定在创建控制器时应使用当前 ControllerContext set控制器属性。该属性必须具有公共set方法。
DisableRequestSizeLimitAttribute禁用请求正文大小限制。
FormatFilterAttribute此筛选器将使用路由数据或查询字符串中的格式值对从操作返回的 ObjectResult 设置内容类型。
FromBodyAttribute指定应使用请求正文绑定参数或属性。
FromFormAttribute指定应在请求正文中使用表单数据绑定参数或属性。
FromHeaderAttribute指定应使用请求标头绑定参数或属性。
FromQueryAttribute指定应使用请求查询字符串来绑定参数或属性。
FromRouteAttribute指定应使用当前请求中的路由数据来绑定参数或属性。
FromServicesAttribute指定应该使用请求服务绑定操作参数。
HiddenInputAttribute指示应使用类型为”hidden”的<input> 元素编辑关联的属性或具有关联类型的所有属性。
HttpDeleteAttribute标识支持 HTTP DELETE 方法的操作。
HttpGetAttribute标识支持 HTTP GET 方法的操作。
HttpHeadAttribute标识支持 HTTP HEAD 方法的操作。
HttpOptionsAttribute标识支持 HTTP OPTIONS 方法的操作。
HttpPatchAttribute标识支持 HTTP PATCH 方法的操作。
HttpPostAttribute标识支持 HTTP POST 方法的操作。
HttpPutAttribute标识支持 HTTP PUT 方法的操作。
IgnoreAntiforgeryTokenAttribute跳过防伪造令牌验证的筛选器。
MiddlewareFilterAttribute执行由 ConfigurationType 提供的中间件管道。中间件管道将被视为异步资源筛选器。
ModelBinderAttribute此特性指定要用于 IModelBinder 绑定的模型名称或类型。
ModelMetadataTypeAttribute此特性指定要与数据模型类关联的元数据类。
NonActionAttribute指示控制器方法不是操作方法。
NonControllerAttribute指示此特性应用于的类型和任何派生类型不被默认控制器发现机制视为控制器。
NonViewComponentAttribute指示此特性应用于的类型和任何派生类型不被默认视图组件发现机制视为视图组件。
PageRemoteAttribute 为razor page处理程序的RemoteAttributeBase ,此处理程序用于配置非介入式验证以将 Ajax 请求发送到网站。 调用的处理程序应返回 JSON,指示该值是否有效。
ProducesAttribute一个筛选器,指定操作要返回的预期的 Type 以及支持的响应内容类型。ContentTypes值用于设置 ContentTypes 。
ProducesDefaultResponseTypeAttribute一个筛选器,指定由ProducesResponseTypeAttribute未涵盖的所有 HTTP 状态代码的Type
ProducesErrorResponseTypeAttribute指定默认情况下由使用ApiControllerAttribute批注的控制器返回的类型。Type如果未提供任何值,则指定为客户端错误 (HTTP 状态代码 4xx) 与ProducesResponseTypeAttribute相关联的错误模型类型。当未指定任何值,如果使用映射客户端错误(ClientErrorMapping),则 MVC 会假设客户端错误类型为 ProblemDetails 。如果你的应用程序使用自定义错误类型进行响应,请使用此特性配置默认错误类型。
ProducesResponseTypeAttribute一个筛选器,指定操作返回的值和状态代码的类型。
RemoteAttribute一个为控制器的RemoteAttributeBase ,用于配置非介入式验证以将 Ajax 请求发送到网站的控制器。 调用的操作应返回 JSON,指示该值是否有效。
RemoteAttributeBase一个 ValidationAttribute ,它配置不引人注目的验证,以将 Ajax 请求发送到网站。调用的终结点应返回 JSON,指示该值是否有效。
RequestFormLimitsAttribute将指定的限制设置到 Form 。
RequestSizeLimitAttribute将请求正文大小限制设置到指定大小。
RequireHttpsAttribute确认通过 HTTPS 接收请求的授权筛选器。
ResponseCacheAttribute指定在响应缓存中设置适当的标头所需的参数。
RouteAttribute指定控制器上的特性路由。
ServiceFilterAttributeIServiceProvider 中查找另一个筛选器的筛选器 。
SkipStatusCodePagesAttribute阻止执行 StatusCodePages 中间件的筛选器。
TempDataAttribute使用 TempDataAttribute 修饰的属性的值将存储在 ITempDataDictionary中,并且从ITempDataDictionary加载。 TempDataAttribute 在 Controllers、Razor Pages 和 Razor Page模型的属性上受支持。
TypeFilterAttribute一种筛选器,它创建 ImplementationType 类型的另一个筛选器,从依赖关系注入检索缺少的构造函数参数(如果有)。
ValidateAntiForgeryTokenAttribute指定应用此特性的类或方法将验证防伪标记。如果未使用防伪令牌,或者令牌无效,则验证将失败,并且操作方法将不会执行。
ViewComponentAttribute指示类和所有子类均为 “视图组件”。(可选)指定视图组件的名称。 如果为多个视图组件定义基类,请将此特性与该基项相关联。
ViewDataAttribute使用 ViewDataAttribute 修饰的属性的值将存储在ViewDataDictionary 中,并且从 ViewDataDictionary加载。ViewDataDictionary 在控制器和 Razor 页面处理程序的属性上支持 。

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/csharp/aspnetcoremvc/15336.html

(0)
上一篇 2022年5月4日 01:19
下一篇 2022年5月6日 01:20

相关推荐

发表评论

登录后才能评论