【发布时间】:2011-04-27 15:48:02
【问题描述】:
嗯,
当我阅读并尝试了所有类似的主题但没有成功时,我决定发布我自己的问题。 我的解决方案有一个控制台应用程序和一个用于数据访问的类库。 Nhibernate 配置位于控制台应用程序的 appconfig 中(我目前正在使用它进行调试,因为我将在制作 Web 应用程序并将所有配置迁移到 web.config 之后)。
例外是众所周知的:
NHibernate.Bytecode.UnableToLoadProxyFactoryFactoryException: Unable to load type NHibernate.ByteCode.Castle.ProxyFactoryFactory,NHibernate.ByteCode.Castle.dll' during configuration of proxy factory class. Possible causes are: - The NHibernate.Bytecode provider assembly was not deployed. - The typeName used to initialize the 'proxyfactory.factory_class' property of the session-factory section is not well formed. Solution: Confirm that your deployment folder contains one of the following assemblies: NHibernate.ByteCode.LinFu.dll NHibernate.ByteCode.Castle.dll ---> System.IO.FileNotFoundException: Could not load file or assembly 'NHibernate.ByteCode.Castle.dll' or one of its dependencies. The system cannot find the file specified.
我尝试解决的步骤:
1) 部署文件夹中的 dll - 我的 bin 中有以下 dll:
Antlr3.Runtime.dll - v. 3.1.3.42154
Castle.Core.dll - v. 2.5.1.2121
Castle.DynamicProxy2.dll - v. 2.2.0.6628
Iesi.Collections.dll - v.3.0.0.1002
log4net.dll - v. 1.2.10.0
NHibernate.ByteCode.Castle.dll - v.3.0.0.2001
NHibernate.dll - v.3.0.0.1002
Oracle.DataAccess.dll - v.4.112.1.2
Remotion.Data.Linq.dll - v.1.13.41.2
2) 配置块中的配置
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="dialect">NHibernate.Dialect.Oracle10gDialect</property>
<property name="connection.driver_class">NHibernate.Driver.OracleDataClientDriver</property>
<property name="connection.connection_string_name">MetaManager</property>
<property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory,NHibernate.ByteCode.Castle</property>
<mapping assembly="MetaManager.Data"/>
</session-factory>
3) 我将 MetaManager.Data 项目设置为部署在 x86 CPU
4)我的bin文件夹中的所有dll都在项目中被引用。
我想这就是它。我不知道还有什么要走的:(
佩德罗·杜索
更新以粗体
【问题讨论】:
标签: c# oracle nhibernate hibernate