5

我正在尝试将 nhibernate 2.1.2 配置为以中等信任运行,但没有任何运气。我已尝试按照建议以中等信任度运行并预先生成代理

然后我尝试删除所有对延迟加载的引用,在所有类和包上设置 default-lazy="false"。但是,这引发了一个异常,要求我配置 proxyfactory.factory_class

这些方法都不起作用,因为它们一直在抛出通用安全异常或容易导致库不允许 AllowPartiallyTrustedCallers。

如果我想以中等信任度运行,我是否使用了错误版本的 NHibernate?

是否有一组特定的二进制文件或源代码,我应该使用它们。

更新:

我设法使用卡尔提到的城堡项目邮件列表中提到的步骤来完成这项工作。除此之外,我必须禁用城堡和休眠库的调试信息的生成。我写了一份我所采取的步骤的快速指南,可以在这里找到

4

2 回答 2

2

我也在寻找解决这个问题的方法。我在这里遇到的一个建议的解决方案是获取城堡核心、城堡动态代理和 Nhibernate 并重新编译它们(使用 [assembly: AllowPartiallyTrustedCallers] 相互引用新的引用。有谁知道这是否是方式去(我自己没时间尝试)?

于 2010-03-26T12:07:17.803 回答
0

NHibernate 需要访问您的域模型,因此您的域模型程序集必须允许访问部分受信任的调用者。

添加[assembly:AllowPartiallyTrustedCallers]到您的 AssemblyInfo 文件中。

于 2010-03-26T14:52:05.203 回答