使用 TestServer 测试 ASP.NET Core full .NET Framework 给出了在 vs 2017 中找不到的方法

Testing ASP.NET Core full .NET Framework with TestServer gives method not found in vs 2017

在 Visual Studio 2017 年尝试 运行 测试时,所有编译都没有问题, 但是,当我尝试创建服务器和客户端进行测试时:

this.Server = new TestServer(
                new WebHostBuilder()
                    .UseStartup<Startup>()
                    .UseContentRoot(di.FullName));

 this.Client = this.Server.CreateClient();

即使 TestHost 包是:

TestServer 抱怨错误的依赖项(它尝试加载版本 1.0.0)
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="1.1.1" />

测试也因异常而失败:

Cannot find method: 'System.Net.Http.HttpClient Microsoft.AspNetCore.TestHost.TestServer.CreateClient()'..

与VS 2017中错误的测试模板有关 在顶部手动添加 <PropertyGroup>

<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>

csproj 文件中修复了问题