zoukankan      html  css  js  c++  java
  • .Net Core3.1 常用的服务注入

    用.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

  • 相关阅读:
    VS2010版快捷键
    Win7旗舰版中的IIS配置asp.net的运行环境
    实现软件自动在线升级的原理
    view_countInfo
    C#尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
    error: 40
    SQL Server 2008 阻止保存要求重新创建表的更改问题的设置方法
    继承实现圆柱体面积体积的计算
    圆柱模板价格计算器V1.0版本
    python3.7内置函数整理笔记
  • 原文地址:https://www.cnblogs.com/qtiger/p/13293088.html
Copyright © 2011-2022 走看看