Moq多界面问题

这可能是也可能不是多接口问题,但我做的是这样的:

var mockInterface1 = new Mock(); var mockInterface2 = mockInterface1.As(); mockInterface1.Expect( foo => foo.Foo(It.IsAny() ) ); ... otherObject.DoSomething( (IInterface1)mockInterface2.Object ); 

在运行时的DoSomething行上,我得到:

MyTest(TestFixtureSetUp):System.Reflection.TargetInvocationException:调用目标抛出了exception。

—-> System.TypeInitializationException:’IInterface1Proxy184f83d417624e05b450fa40c2c5d35c’的类型初始值设定项引发exception。

—-> System.BadImageFormatException:尝试加载格式不正确的程序。 (HRESULTexception:0x8007000B)

这是否与我没有正确的Expect代码有关,或者它与我的模拟中的多个接口有关,还是其他什么?

我找到了这个链接: Castle Project主题

这似乎表明它在Castle的DynamicProxy中存在问题,Moq(和RhinoMocks)使用它。

我知道这不是一个答案,但它听起来像MOQ中的一个错误。 你用的是什么版本? 我刚用2.6(2.6.1014.1)尝试了你的例子,我没有得到exception。