Npgsql 库破坏了 Microsoft TestServer

Npgsql library breaks Microsoft TestServer

我有一些测试,使用 Microsoft TestServer (Microsoft.Owin.Testing v4.0.0)。我添加了对 Npgsql (v.4.0.0) 的引用,它突然破坏了我的测试。

我已经用一个最小的测试项目重新创建了这个行为。这是我的测试代码:

    [Test]
    public void Test()
    {
        using (var server = TestServer.Create(app =>
        {
            app.Run(context =>
            {
                return context.Response.WriteAsync("Hello world using OWIN TestServer");
            });
        }))
        {
            HttpResponseMessage response = server.HttpClient.GetAsync("/").Result;
        }
    }

这是输出:

System.MissingMethodException : Method not found: 'System.Net.Http.HttpClient Microsoft.Owin.Testing.TestServer.get_HttpClient()'.
at Test.Class1.Test()

如果我删除 Npgsql 它不会修复它,尽管它在我首先添加它之前就可以工作。我正在使用 Nuget 添加依赖项。

使用 Npgsql v3.2.7,这解决了问题。