我从NH2.1/Fluent1.1升级到了NH3.1/Fluent1.2。我使用LinFu作为代理,但是在升级之后,无论我配置什么,NH都会尝试加载Castle。Im设置Fluent时使用
Configuration _Configuration;
FluentConfiguration _FluentConfig;
_Configuration = new Configuration();
_Configuration.Configure();
_FluentConfig = Fluently.Configure(_Configuration)
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<FluentNHSession>()))此外,nhibernate.cfg还配置为使用linfu:
<property name="proxyfactory.factory_class">NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu</property> 当运行应用程序时,会出现一个异常,说它找不到castle dll。使用相同的nhibernate.cfg,但将castle ddl放在bin目录下工作正常,似乎NH忽略了配置。
发布于 2011-04-30 19:57:58
我也有同样的问题。我在fluent配置中包含了这一行,从而解决了这个问题。
sessionFactory = Fluently.Configure(normalConfig)
.Mappings(m =>
m.FluentMappings
.AddFromAssemblyOf<OrderHeaderMap>()
.Conventions.AddFromAssemblyOf<PascalCaseColumnNameConvention>())
.ProxyFactoryFactory("NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu")
.BuildSessionFactory();如果此答案或此处的任何其他答案对您有帮助,请单击复选标记将其标记为答案。
https://stackoverflow.com/questions/5840818
复制相似问题