我创建了一个新的 servicecollection 对象并添加了一个服务。但是,当我构建服务提供者并尝试获取服务时,它返回 null。下面的例子。
IServiceCollection services = new ServiceCollection();
services.AddDbContext<DataContext>();
IServiceProvider provider = services.BuildServiceProvider();
var dc = provider.GetService<DataContext>();
该示例使用数据上下文,但它发生在任何服务中。此代码正在控制器方法中进行测试。
等效代码在实现 IDesignTimeDbContextFactory 的类的 CreateDbContext 中工作。如果这有助于回答。