gpt4 book ai didi

c# - MoqMockingKernel : System. TypeLoadException:类型违反了继承安全规则

转载 作者:太空狗 更新时间:2023-10-29 21:45:41 24 4
gpt4 key购买 nike

我尝试使用 MoqMockingKernel 类。 (Ninject.MockingKernel.Moq) 来自用于单元测试的 Ninject.MockingKernel 扩展。

在初始化 MoqMockingKernel 时出现以下错误:

System.TypeLoadException: System.TypeLoadException: Inheritance security rules violated by type: 'Ninject.MockingKernel.MockingKernel'. Derived types must either match the security accessibility of the base type or be less accessible..

我的初始化代码:

        private MoqMockingKernel mockingKernel;
private Mock<IUnitOfWork> unitOfWorkMock;
private IExternalServiceRepository externalServiceRepository;

[TestInitialize]
public void Initialize()
{
this.mockingKernel = new MoqMockingKernel();
this.mockingKernel.Bind<IUnitOfWork>().ToMock();

this.unitOfWorkMock = this.mockingKernel.GetMock<IUnitOfWork>();

externalServiceRepository = new ExternalServiceRepository { Kernel = this.mockingKernel };
}

我该如何解决这个TypeLoadException

最佳答案

您使用的是 .Net 框架 >= 4.0 吗?

查看此 conversation

我从这些说明中得到了建议:我通过添加这一行修改了 MockingKernel 源代码

[assembly: System.Security.SecurityRules(System.Security.SecurityRuleSet.Level1)]

到项目 Ninject.MockingKernel 和 Ninject.MockingKernel.Moq 中的 AssemblyInfo.cs。然后我重新编译了解决方案,安装了 dll,我的代码开始工作了!

我希望这对你有用。

关于c# - MoqMockingKernel : System. TypeLoadException:类型违反了继承安全规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13286799/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com