如何使用FakeItEasy伪造泛型方法调用?

Chr*_*sen 3 generics fakeiteasy dapper

我伪造了一个IDbConnection,我想打电话给QueryOne<T>()(一个Dapper扩展名),但我NullReferenceException这样做了.

这是我的代码:

IDbConnection myConnection = A.Fake<IDbConnection>();


A.CallTo(() => myConnection.QueryOne<MyDto>(A<string>.Ignored,  <IDbConnection>.Ignored, A<IDbTransaction>.Ignored))
.Returns(new MyDto());
Run Code Online (Sandbox Code Playgroud)

是不是可以模拟泛型方法调用FakeItEasy或为什么我得到异常?

提前致谢...

基督教

小智 6

由于Dapper使用扩展方法来提供其功能,并且因为扩展方法只是花哨的静态方法,所以我认为您无法使用它.从我读过的(看到这个问题)FakeItEasy无法拦截静态方法.