在标准类库中如何调用 IServiceProvider.GetService() 方法来获得在 Startup.cs 中注册的对象,在静态类中访问此方法,不使用构造函数注入
在类库中怎么访问 HttpContext.RequestServices 方法
IServiceProvider 才有 GetService() 方法,不建议使用这种反模式
我是想在 startup 中注册 services.AddDistributedRedisCache(options) 服务,然后类库中有需要用到redis缓存,在类为中可以访问 IServiceProvider 方法吗?
@老S: 这种情况下不应该使用静态类,如果一定要使用,只能给这个静态类添加一个 IDistributedCache 类型的静态属性,在 Startup 的 Configure 方法中解析出 IDistributedCache 的实例赋值给这个静态属性