Dependency injection 如何在集成测试中获得注册服务

Dependency injection 如何在集成测试中获得注册服务,dependency-injection,asp.net-core,integration-testing,Dependency Injection,Asp.net Core,Integration Testing,我想在集成测试中添加ApplicationUser用户,因此需要使用“UserManager.CreateAsync()”。 我已经知道如何从“集成测试”文档页面获取ApplicationDbContext 我的问题是如何在集成测试或任何其他di注册服务中获得UserManager服务?您可以通过TestServer解决它 var testServer = new TestServer(new WebHostBuilder() .UseStartup<Startup>()

我想在集成测试中添加ApplicationUser用户,因此需要使用“UserManager.CreateAsync()”。 我已经知道如何从“集成测试”文档页面获取ApplicationDbContext


我的问题是如何在集成测试或任何其他di注册服务中获得UserManager服务?

您可以通过
TestServer
解决它

var testServer = new TestServer(new WebHostBuilder()
    .UseStartup<Startup>()
    .UseEnvironment("Development"));

var myService = testServer.Host.Services.GetRequiredService<IMyService>();
var testServer=newtestserver(new WebHostBuilder()
.UseStartup()
.使用环境(“开发”);
var myService=testServer.Host.Services.GetRequiredService();