我在运行时收到以下错误: NHibernate.Bytecode.ProxyFactoryFactoryNotConfiguredException:持久层中发生异常。在NHibernate.Bytecode.AbstractBytecodeProvider.get_ProxyFactoryFactory()
以下是配置文件:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory >
<property name="connection.provider">
NHibernate.Connection.DriverConnectionProvider</property>
<property name="connection.driver_class">NHibernate.Driver.SQLite20Driver</property>
<property name="connection.connection_string">Data Source=audioHistory.sqlite</property>
<property name="show_sql">true</property>
<property name="dialect">NHibernate.Dialect.SQLiteDialect</property>
<property name="proxyfactory.factory_class">
NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property>
<property name="query.substitutions">true=1;false=0</property>
<mapping assembly="DataTransfer"/>
</session-factory>
</hibernate-configuration>该文件将复制到输出目录中。我在项目中对NHibernate.ByteCode.Castle的引用在以下行失败
Configuration config = new Configuration();
_sessionFactory = config.BuildSessionFactory(); // Fail如有任何建议,欢迎光临。
发布于 2010-12-09 02:12:00
如果您使用的是Castle.DynamicProxy2.x,请确保您拥有对Castle.Core.dll和Castle.DynamicProxy2.dll的引用。
或者,如果您使用的是Castle.DynamicProxy2.dll 3.x,请确保您有对Castle.Core.dll的引用(Castle.DynamicProxy2.dll已不复存在)
发布于 2010-12-09 14:46:28
我在一个用于演示的示例NHibernate项目中尝试了您的配置,它起作用了。所以问题不在这里。
验证复制到输出目录的程序集的版本是否与NHibernate附带的版本相同。我遇到过这样的情况:其他库引入了自己的依赖项,包括冲突版本的Castle.Core.dll或NHibernate.ByteCode.Castle.dll。不太可能,但有些东西需要检查。
https://stackoverflow.com/questions/4384254
复制相似问题