这可能有点过时,但假设我想在 ViewModel 中使用 Moq 来创建一些设计时数据,如下所示:
public class SomeViewModel
{
public SomeViewModel(ISomeDependency dependency)
{
if (IsInDesignMode)
{
var mock = new Mock<ISomeDependency>();
dependency = mock.Object; // this throws!
}
}
}
可以设置模拟来做一些事情,但你明白了。
我的问题是,在 Blend 的设计时,此代码引发 InvalidCastException,消息类似于“无法将类型为 'Castle.Proxies.ISomeDependencyProxy2b3a8f3188284ff0b1129bdf3d50d3fc' 的对象转换为类型 'ISomeDependency'”。虽然这看起来不一定与起订量相关,但与城堡相关,但我希望起订量示例有所帮助;)
知道为什么吗?
谢谢!