asp.net-core - 如何为我的应用程序中的所有控制器设置 ProducesResponseType?
问题描述
我有处理所有未处理异常并返回的中间件
public class ErrorResponseModel {
public string ErrorMessage { get; set; }
}
我喜欢添加[ProducesResponseType(typeof(ErrorResponseModel), 500)]
到我所有的控制器中,但我不明白如何做一次(没有为我的所有控制器复制或引入基类)。
解决方案
将其添加为全局过滤器,如下所示:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc(o =>
{
o.Filters.Add(new ProducesResponseTypeAttribute(typeof(ErrorResponseModel), 500));
})
}
这与应用于所有控制器基本相同。
推荐阅读
- python-3.x - 使用 Python 的 docx 库时如何配置页眉(和页脚)的“顶部页眉”值?
- xamarin - 什么时候需要 InvalidateSurface()?
- wordpress - 从 WordPress 读取和写入 Firebase 实时数据库/身份验证?
- sql - SQL - 包括最近拥有的组
- python - 在 Python 中将 .dat 文件处理为具有不规则间距的数据框
- c# - RabbitMq 检查消息是否存在于队列中
- rest - 通过 REST API 公开 Redshift 表
- django - 无法使用 2 个表单创建视图
- c++ - Creating a function that takes a container "X" as a parameter, which passes X.size() parameters to a variadic function that it calls
- mysql - 服务器向客户端发送未知字符集。请向开发人员报告