有一个如何在https://docs.asp.net/en/latest/mvc/controllers/filters.html创建CustomExceptionFilterAttribute的示例 我想用IHostingEnvironment作为参数来创建一个CustomExceptionFilterAttribute。
services.AddMvc(
config =>
{
config.Filters.Add(new CustomExceptionFilterAttribute(???));
});
我正在尝试在启动类中添加过滤器,但我不知道如何提供IHostingEnvironment参数。
services.AddMvc必须在方法
中public void ConfigureServices(IServiceCollection services)
如果我这样做,我就会收到错误
public void ConfigureServices(IServiceCollection services,IHostingEnvironment env)
答案 0 :(得分:0)
我认为你想要实现的是IExceptionFilter Interface,并且在实现之后你可以在ConfigureServices中添加一些CustomExceptionFilter。需要以不同方式处理CustomExceptionFilterAttribute,因为这是一个Attribute。
答案 1 :(得分:0)
您可以像这样使用Startup
构造函数注入:
private readonly IHostingEnvironment _env;
public Startup(IHostingEnvironment env)
{
_env = env;
}
.....
services.AddMvc(
config =>
{
config.Filters.Add(new CustomExceptionFilterAttribute(_env));
});
请参阅官方文档https://docs.asp.net/en/latest/fundamentals/startup.html#services-available-in-startup