C# 如何模拟基类的受保护成员

C# 如何模拟基类的受保护成员,c#,unit-testing,moq,C#,Unit Testing,Moq,为什么这样的事情不起作用: public class BaseFoo{ protected int FooField; } public class FooChild:BaseFoo{ } var m = new Mock<FooChild>(); m.Protected().Setup<int>("FooField").Returns(1); 公共类BaseFoo{ 受保护的国际贸易领域; } 公共类FooChild:BaseFoo{ } var m=新

为什么这样的事情不起作用:

public class BaseFoo{
   protected int FooField;
}

public class FooChild:BaseFoo{

}

var m = new Mock<FooChild>();

m.Protected().Setup<int>("FooField").Returns(1);
公共类BaseFoo{
受保护的国际贸易领域;
}
公共类FooChild:BaseFoo{
}
var m=新的Mock();
m、 Protected().Setup(“FooField”)。返回(1);

它说“Member FooChild.FooProp不存在”

哦。。我懂了。。它必须是一个属性而不是字段,并且必须是受保护的虚拟变量。如果父类的任何变量受保护,则可以在子类中访问它,但不能在将扩展或使用子类的类中访问它