首页 > Web开发 > 详细

.Net Core3.1 常用的服务注入

时间:2020-07-13 15:31:13      阅读:131      评论:0      收藏:0      [点我收藏+]

用.CORE3.1构建了项目,在Startup.cs进行服务注入,这里记录下:

1、SuppressModelStateInvalidFilter

services.Configure<ApiBehaviorOptions>(options => options.SuppressModelStateInvalidFilter = true);
 SuppressModelStateInvalidFilter =true时,会关闭默认模型验证过滤器。[ApiController] 默认自带有400模型验证,且优先级比较高,如果需要自定义模型验证,则需要先关闭默认的模型验证。

2、AddControllers

services.AddControllers(options =>
{
     options.Filters.Add<GlobalExceptionFilter>();
})

  将控制器的服务添加到指定的Microsoft.Extensions.DependencyInjection.IServiceCollection。此方法不会注册用于视图或页面的服务,此方法使用API的控制器为常用功能配置MVC服务。我们也可以添加自定义的服务,如上全局异常过滤器。

3、AddControllersAsServices  

services.AddControllers().AddControllersAsServices();

  Controller 默认是不会通过自带容器来 Resolve&Activate 的,是通过MVC自身管理的。可以通过调用 AddControllersAsServices()方法来让 Controller 使用自带容器。

4、AddNewtonsoftJson

services.AddControllers(options =>
{
    options.Filters.Add<ValidFilterAttribute>();
    options.Filters.Add<GlobalExceptionFilter>();
})
.AddControllersAsServices()
.AddNewtonsoftJson(options =>
{
    options.SerializerSettings.ContractResolver = new DefaultContractResolver();
});

  配置Newtonsoft.Json特定功能,如输入和输出格式化程序。

5、AddHttpContextAccessor

services.AddHttpContextAccessor()

   利用ASP.NET Core提供的IHttpContextAccessor来获取HttpContext

.Net Core3.1 常用的服务注入

原文:https://www.cnblogs.com/qtiger/p/13293088.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!