C# Microsoft Fakes无法生成存根
我有一个具有以下接口的类库:C# Microsoft Fakes无法生成存根,c#,microsoft-fakes,C#,Microsoft Fakes,我有一个具有以下接口的类库: public interface IFoo { void Foo(Claim claim); } 我有一个带有以下测试的单元测试项目: [TestClass] public class UnitTest1 { [TestMethod] public void TestMethod1() { var stubIFoo = new ClassLibrary1.Fakes.StubIFoo(); } } 如果两个
public interface IFoo
{
void Foo(Claim claim);
}
我有一个带有以下测试的单元测试项目:
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
var stubIFoo = new ClassLibrary1.Fakes.StubIFoo();
}
}
如果两个项目都以.NETFramework4.6为目标,那么一切都可以正常工作。但是,如果两个项目都以.NET Framework 4.5.1为目标,我会得到以下警告:
无法为ClassLibrary1.IFoo生成存根:方法System.Void
ClassLibrary1.IFoo.Foo(System.Security.Claims.Claims)
不可存根:方法是抽象的,无法存根,类型为
System.Security.Claims.Claim在目标框架中不可用
版本
以及编译错误,因为不再生成StubIFoo
:
命名空间中不存在类型或命名空间名称“StubIFoo”
“ClassLibrary1.Fakes”(是否缺少程序集引用?)
这是ClassLibrary1.fakes
文件的内容:
<Fakes xmlns="http://schemas.microsoft.com/fakes/2011/" Diagnostic="true" Verbosity="Verbose">
<Assembly Name="ClassLibrary1"/>
<ShimGeneration>
<Remove TypeName="IFoo"/>
<Remove TypeName="IBar"/>
</ShimGeneration>
</Fakes>
当这两个项目都有目标时,你对我如何使这项工作有效有什么想法吗
.NET Framework 4.5.1?与中的错误相同: