.net core ConfigureServices和Configure

news/2025/4/26 11:41:49/

在.NET Core应用程序中,ConfigureServicesConfigure方法在Startup类中起着重要的作用。

ConfigureServices方法用于进行依赖注入的配置。在该方法内,你可以注册应用程序所需要的各种服务、中间件和其他依赖项。它接收一个IServiceCollection参数,你可以通过调用该参数的方法来注册服务。示例代码:

public void ConfigureServices(IServiceCollection services)
{services.AddMvc();services.AddSingleton<IMyService, MyService>();services.AddScoped<PermissionFilter>();services.AddScoped<IAuthorizationHandler, GroupRequirementHandler>();
}

在上面的示例中,我们使用AddMvc方法注册了MVC服务,使用AddSingleton方法注册了一个单例服务。

Configure方法用于配置应用程序的HTTP请求处理管道。在该方法内,你可以添加中间件,配置路由、授权、异常处理等。它接收一个IApplicationBuilder参数,你可以通过调用该参数的方法来添加中间件和配置管道。示例代码:

public void Configure(IApplicationBuilder app)
{app.UseStaticFiles();app.UseRouting();app.UseAuthentication();app.UseAuthorization();//...其他中间件app.UseEndpoints(endpoints =>{endpoints.MapControllers();});
}

在上面的示例中,我们使用UseStaticFilesUseRoutingUseAuthenticationUseAuthorization等方法来添加内置的中间件到管道中。

  • ConfigureServices方法在应用程序启动时执行,它负责配置服务的注册。
  • Configure方法在启动时执行,它负责配置中间件和管道的顺序。

通过这两个方法的配合使用,你可以完成应用程序所需的服务注册和管道配置,使得应用程序可以以正确的方式处理HTTP请求。


http://www.ppmy.cn/news/1008216.html

相关文章

java类的加载过程

我们在应用程序中所创建的.java文件叫做源文件&#xff0c;源文件在通过编译器javac.exe的编译之后生成的.class文件叫做字节码文件&#xff0c;我们在使用java命令去执行应用程序的时候&#xff0c;会先由类加载器将字节码文件加载到内存&#xff0c;通过加载、验证、准备、解…

Windows11 家庭中文版关于本地组策略编辑器gpedit.msc找不到即打不开的解决办法(征诚小张售后实测有效)

Windows11 家庭中文版关于本地组策略编辑器gpedit.msc找不到即打不开的解决办法 根本原因&#xff1a;是因为Windows11家庭中文版的 版本系统没内置安装本地策略组编辑器 好了废话不多说 直接说解决办法 第一步 首先电脑上新建一个空文本文件 输入以下内容&#xff1a; echo o…

Linux进程(二)

文章目录 进程&#xff08;二&#xff09;Linux的进程状态R &#xff08;running&#xff09;运行态S &#xff08;sleeping&#xff09;阻塞状态D &#xff08;disk sleep&#xff09;深度睡眠T&#xff08;stopped&#xff09;状态X&#xff08;dead&#xff09;状态Z&#x…

第1章 初识C语言

什么是C语言 人和计算机交流的语言就被称为计算机语言C语言广泛被应用于底层开发早期的计算机语言&#xff1a;二进制指令 --> 汇编语言&#xff08;给二进制添加助记符号&#xff09;–> B语言 --> C语言C语言的国际标准&#xff1a;ANSI C&#xff0c;C89&#xff…

vue 把template 中写到单独文件 再导入

1 方法一 在 template 标签中使用 src 属性引入模板文件&#xff1a; <template src"./MyComponentTemplate.html"></template>2 方法二 在 <script> 标签中使用 require 或 import 引入模板文件&#xff1a; import MyComponentTemplate from .…

PostGIS-矢量空间函数

PostGIS-矢量空间函数 管理函数UpdateGeomtrySRID 功能描述 更新几何下的所有要素的SRID。如果被强制约束,则这个约束将更新替换为新的SRID;如果强制类型定义,则强制类型定义改变。 参数说明 UpdateGeometrySRID函数的参数说明 参数类型说明schema_namevarchar存储表的…

【雕爷学编程】MicroPython动手做(31)——物联网之Easy IoT 3

1、物联网的诞生 美国计算机巨头微软(Microsoft)创办人、世界首富比尔盖茨&#xff0c;在1995年出版的《未来之路》一书中&#xff0c;提及“物物互联”。1998年麻省理工学院提出&#xff0c;当时被称作EPC系统的物联网构想。2005年11月&#xff0c;国际电信联盟发布《ITU互联网…

react工程化配置

道阻且长&#xff0c;行而不辍&#xff0c;未来可期 1.安装react yarn create react-app demo --template typescript cd demo yarn start2.配置蓝图模版 2.1安装blueprint插件 https://github.com/shredor/blueprint-templates-cli#readme yarn add blueprint-templates-c…