2009-07-12 19 views
1

私はFluent NHiberateをキャッスルファシリティと共に運営しています。Fluent NHibernate with Castleファシリティーネーミングストラテジー

ただし、どのようにNamingStrategyを設定しますか?私は運がないConfigurationオブジェクトを試しました。私の命名戦略はWindsorコンテナに登録する必要がありますか?

+0

どうすればhttp://fluentnhibernate.org/api/FluentNHibernate.Mapping/PropertyMap.htm#Access? –

+0

私はむしろ最初に命名戦略を使用したいと思います。 –

答えて

2

私が知る限り、NHibernate機能で命名戦略を設定する方法はありません。これについてはcreate a new issueをください。

回避策として、DefaultConfigurationBuilderから継承し、NamingStrategyを適用するGetConfiguration()を上書きすることができます。それを作成するときに

は、作成したばかりのこの新しいIConfigurationBuilder使うNHibernateFacilityにそれを注入するには、次の

もちろん
container.AddFacility(new NHibernateFacility(new MyNamingStrategyConfigurationBuilder())); 

、最善の解決策は、あなたがDefaultConfigurationBuilderでこれを実装し、パッチを提出することになります。 - )

+0

Configuration.SetNamingStrategy(...)はどうですか? –

+0

もちろん、Configuration.SetNamingStrategy()は、オーバーライドされたGetConfiguration()内で呼び出す必要があります。 AFAIK SetNamingStrategy()は、マッピングが登録される前に呼び出されなければならないので、そこになければなりません。 –