C# 不为类型'提供服务;Microsoft.Extensions.Http.DefaultHttpClientFactory';已注册
Visual Studio 2019。c#。 某些更改后的现有单元测试开始失败,并显示错误消息 System.InvalidOperationException:尚未注册类型为“Microsoft.Extensions.Http.DefaultHttpClientFactory”的服务 有趣的是,没有对测试代码进行直接更改。C# 不为类型'提供服务;Microsoft.Extensions.Http.DefaultHttpClientFactory';已注册,c#,visual-studio,unit-testing,nuget-package,C#,Visual Studio,Unit Testing,Nuget Package,Visual Studio 2019。c#。 某些更改后的现有单元测试开始失败,并显示错误消息 System.InvalidOperationException:尚未注册类型为“Microsoft.Extensions.Http.DefaultHttpClientFactory”的服务 有趣的是,没有对测试代码进行直接更改。 更新了一些软件包,仅此而已。我发现要解决这个问题,它需要 安装软件包Microsoft.AspNet.WebApi.Core 5.2.7(发布文章时的版本) 在那之后,我必
更新了一些软件包,仅此而已。我发现要解决这个问题,它需要 安装软件包Microsoft.AspNet.WebApi.Core 5.2.7(发布文章时的版本) 在那之后,我必须实现IHttpClientFactory 因为它是测试,所以它很简单
public class HttpClientFactoryTest : IHttpClientFactory
{
public HttpClient CreateClient(string name)
{
var config = new HttpConfiguration();
config.MapHttpAttributeRoutes();
var inMemoryServer = new HttpServer(config);
return new HttpClient(inMemoryServer);
}
}
然后它还需要像这样注册类型
unityContainer.RegisterType<IHttpClientFactory, HttpClientFactoryTest>();
unityContainer.RegisterType();
之后,错误消失了
看来你的问题已经解决了,请考虑一下。