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在启动方法中提供您需要的任何服务。

相关推荐
952361 小时前
MyBatis
后端·spring·mybatis
uzong4 小时前
9 种 RAG 架构,每位 AI 开发者必学:完整实战指南
后端
小江的记录本5 小时前
【Kafka核心】架构模型:Producer、Broker、Consumer、Consumer Group、Topic、Partition、Replica
java·数据库·分布式·后端·搜索引擎·架构·kafka
止语Lab5 小时前
从手动到框架:Go DI 演进的三个拐点
开发语言·后端·golang
Daybreak7 小时前
Elasticsearch 里的索引和 Mapping,到底是什么关系?
后端
Lee川7 小时前
Prisma 实战指南:像搭积木一样设计古诗词数据库
前端·数据库·后端
李小狼lee8 小时前
深入浅出sse协议,用代码自己实现
后端
SamDeepThinking8 小时前
并发量就算只有2,该上锁还得上呀
java·后端·架构