2011-11-27 3 views

Respuesta

19

De 3.2, NHibernate tiene su propio generador de proxy incorporado: no hay necesidad de NHibernate.ByteCode.LinFu.dll o NHibernate.ByteCode.Castle.dll y no creo que ya sean compatibles.

Creo que tiene que descargar la última fuente compatible de la fuente NHibernate.ByteCode.LinFu.dll, e intentar compilarla contra la 3.2.

+0

Entonces, al configurar la fábrica de NHibernate Session, ¿qué tipo debo configurar como ProxyFactory? – sternr

+1

¿Está utilizando web/app.cofig o está configurando NHibernate a través del código C#? En la primera forma, debe especificar "codificado" (para CodeDOM), "lcg" (para Lightweight one) o un proveedor personalizado. A través del código C#, debe especificar una istance de 'NHibernate.Bytecode.CodeDom.BytecodeProviderImpl',' NHibernate.Bytecode.Lightweight.BytecodeProviderImpl' o una personalizada. –

+3

Ok, esto no funcionó para mí, lo que tuve que hacer fue usar la siguiente fábrica de proxy: NHibernate.Bytecode.DefaultProxyFactoryFactory – sternr

27

en NHibernate 3.2 no necesita NHibernate.ByteCode.LinFu.dll porque NHibernate 3.2 implementa el proxy por sí mismo. entonces necesitamos modificar la configuración como:

<property name=”proxyfactory.factory_class”>NHibernate.Bytecode.DefaultProxyFactoryFactory, NHibernate</property> 
+3

Si esto no funciona, intente eliminar por completo la línea proxyfactory.factory_class de su archivo de configuración. –

Cuestiones relacionadas