我偶然發現了以下問題:我想從配置文件配置DB,但映射流利(!喜歡)的配置代碼如下所示:從文件混合DB配置與功能NHibernate映射
var cfg = new Configuration();
cfg.Configure();
var fluentCfg = Fluently.Configure(cfg)
.Mappings(
m => m
.FluentMapping
.AddFromAssembly(Assembly.GetExecutingAssembly));
然而配置文件有一個屬性:
<property name="proxyfactory.factory_class">
NHibernate.ByteCode.LinFu.ProxyFactoryFactory,
NHibernate.ByteCode.LinFu
</property>
和之後的cfg.Configure();所有看起來不錯的配置指向LinFu字節碼提供者,但在第三行後我看到配置更改爲使用Castle。我看着在流利的代碼,我可能是錯的,但它看起來像他們在PersistenceConfiguration的構造覆蓋在PersistenceConfiguration.cs(50行)這個屬性:
values[ProxyFactoryFactoryClassKey] = DefaultProxyFactoryFactoryClassName;
不流利的需要城堡?或者可能是我做錯了什麼,或者這只是一個錯誤?
謝謝。
當然,但想法是從配置文件中配置數據庫(這樣我可以在部署過程中更改conn.strings,db-s等),並將映射保留爲流暢(有一個很好的強類型,編譯時可驗證的映射)。 – Val 2011-05-19 15:56:15