2

是否可以在Microsoft Fakes的帮助下(在 Visual Studio 2012 中)创建一个实现HttpContent.ReadAsAsync<T>的存根?如果是这样,怎么做?

4

2 回答 2

4

HttpContent.ReadAsAsync<T>不能在 VS2012 中存根。原因是这不是一种virtual方法,而是一种扩展方法。只有virtual接口/类方法可以被存根。

于 2012-09-18T23:05:02.993 回答
0

为了以后的搜索...

存根只能覆盖它们自己实例的方法。您可以存根任何公开可被覆盖的成员的类型,无论是抽象、接口还是类。

在这种情况下,您可以使用垫片:

ShimHttpContent.ReadAsAsyncOf1<TypeYouWant> = *something matching the method signature*

这提供的额外优势是您现在可以指定每种类型的行为。这是使用垫片的最正当理由之一。

于 2013-10-14T19:24:08.023 回答