C# 使用Rhino Mock模拟属性Getter
下面是类“ConfigurationSection”的属性“LoggerName” 及 但这段代码调用该属性getter并抛出异常 我在不同的地方找过,所有我尝试过的方法都是一样的 有人知道什么可以帮助我的吗 非常感谢C# 使用Rhino Mock模拟属性Getter,c#,mocking,properties,rhino,getter,C#,Mocking,Properties,Rhino,Getter,下面是类“ConfigurationSection”的属性“LoggerName” 及 但这段代码调用该属性getter并抛出异常 我在不同的地方找过,所有我尝试过的方法都是一样的 有人知道什么可以帮助我的吗 非常感谢 Ryan对于使用rhino模拟类,必须将模拟的属性标记为virtual 你能试着把你的房子改成这个吗 public virtual string LoggerName { get { return Convert.ToString(this["LoggerName"]);
Ryan对于使用rhino模拟类,必须将模拟的属性标记为
virtual
你能试着把你的房子改成这个吗
public virtual string LoggerName
{
get { return Convert.ToString(this["LoggerName"]); }
}
看看是否可以让它工作?另外,尝试提取接口,比如接口ILog{string LoggerName{get;set}另一个选择是切换到一个模拟框架,该框架可以为模拟类发出IL,这样你就不必为了测试目的而将成员标记为虚拟。@Denis是,还有一些其他的。从Moles网站:抛出新的Y2KBugException()哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
Expect.Call(configSection.LoggerName).Return("LOREMIPSUM");
configSection.Stub(x => x.LoggerName).Return("LOREMIPSUM");
public virtual string LoggerName
{
get { return Convert.ToString(this["LoggerName"]); }
}