ASP.Net Core 中startup 类的configservice方法的作用?

面试必备:ASP.Net Core 中startup 类的configservice方法的作用?

简述:

ConfigureServices ,就是配置服务器的DI容器,可以添加一些service进入依赖注入容器。

详解:

把需要的中间件等一些东西添加到DI容器 最后都是添加到IServiceCollection里面

比如

c# 复制代码
services.AddIdentityServer()
    .AddDeveloperSigningCredential()
    .AddInMemoryApiResources(Config.GetResource())
    .AddInMemoryClients(Config.GetClients())
    .AddTestUsers(Config.GetTestUsers())
    .AddProfileService<ProfileService>()
    .AddResourceOwnerValidator<LoginValidator>();

对于.AddProfileService() 已经内置了一个默认实现IProfileService接口的一个类 默认会注入内置的(DefaultProfileServer)

这样写了后 其实里面的实现就是 遇到IProfileService 实例化成自定义的类ProfileService 不使用内置的。

启动时服务:

ASP.NET Core依赖注入在应用程序启动期间提供服务。您可以通过在Startup类的构造方法或其Configure方法中包含适当的接口作为参数来请求这些服务。 ConfigureServices方法只接受一个IServiceCollection参数(但是可以从这个集合中检索任何已注册的服务,所以不需要额外的参数)。

下面是一些通常由启动方法请求的服务:

  • 在构造方法中:IHostingEnvironment,ILogger<Startup>
  • ConfigureServices方法中:IServiceCollection
  • Configure方法中:IApplicationBuilder, IHostingEnvironment, ILoggerFactory

Startup类构造方法或其Configure方法可以请求由WebHostBuilder ConfigureServices方法添加的任何服务。使用WebHostBuilder在启动方法中提供您需要的任何服务。

相关推荐
每天进步一点_JL17 分钟前
事务与消息中间件:分布式系统中的可见性边界问题
分布式·后端
bcbnb25 分钟前
Ipa Guard 集成到 CICD 流程,让 iOS 加固进入自动化时代的完整工程方案
后端
该用户已不存在34 分钟前
2025 年 8 款最佳远程协作工具
前端·后端·远程工作
云渠道商yunshuguoji1 小时前
阿里云渠道商:阿里云服务器出问题如何处理?
后端
dyw082 小时前
如何通过xshell实现建立反向隧道,通过云服务器的访问本地服务
后端
changflow2 小时前
告别“黑盒”等待:如何在 LangGraph 中优雅地实现前端友好的 Human-in-the-Loop?
后端
惜棠2 小时前
visual code + rust入门指南
开发语言·后端·rust
n***i952 小时前
Rust在嵌入式系统中的内存管理
开发语言·后端·rust
踏浪无痕2 小时前
PageHelper 防坑指南:从兜底方案到根治方案
spring boot·后端
ziwu3 小时前
昆虫识别系统【最新版】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积神经网络算法
后端·图像识别