Я пытаюсь высмеять класс из Microsoft Sync Framework. Он имеет только внутренний конструктор. Когда я попробую следующее:
var fullEnumerationContextMock = new Mock<FullEnumerationContext>();
Я получаю эту ошибку:
System.NotSupportedException: родительский не имеет конструктора по умолчанию. Конструктор по умолчанию должен быть явно определен.
Это трассировка стека:
System.Reflection.Emit.TypeBuilder.DefineDefaultConstructorNoLock(MethodAttributes атрибуты) System.Reflection.Emit.TypeBuilder.DefineDefaultConstructor(MethodAttributes атрибуты) System.Reflection.Emit.TypeBuilder.CreateTypeNoLock() System.Reflection.Emit.TypeBuilder.CreateType() Castle.DynamicProxy.Generators.Emitters.AbstractTypeEmitter.BuildType() Castle.DynamicProxy.Generators.ClassProxyGenerator.GenerateCode(тип [] интерфейсы, параметры ProxyGenerationOptions) Castle.DynamicProxy.DefaultProxyBuilder.CreateClassProxy(Тип classToProxy, Тип [] дополнительныеИнтерфейсыToProxy, Параметры ProxyGenerationOptions) Castle.DynamicProxy.ProxyGenerator.CreateClassProxyType(Тип classToProxy, Тип [] AdditionalInterfacesToProxy, Параметры ProxyGenerationOptions) Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(Тип classToProxy, Тип [] дополнительныеИнтерфейсыToProxy, Параметры ProxyGenerationOptions, Object [] constructorArguments, IInterceptor [] перехватчики) Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(Тип classToProxy, Тип [] дополнительныеИнтерфейсыToProxy, Параметры ProxyGenerationOptions, IInterceptor [] перехватчики) Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(Тип classToProxy, Тип [] extraInterfacesToProxy, IInterceptor [] перехватчики) Moq.Mock
1.<InitializeInstance>b__0() Moq.PexProtector.Invoke(Action action) Moq.Mock
1.InitializeInstance()
Как я могу обойти это?