1

次のコード行を見ました。

return MsSqlConfiguration.MsSql2008
                .UseOuterJoin()
                .ProxyFactoryFactory(typeof(ProxyFactoryFactory))
                .ConnectionString(x => x.FromConnectionStringWithKey("ApplicationServices"))
                .ShowSql();

流暢なウィキを見て、「自己説明」についての説明がありました。誰かがUseOuterJoin()、ProxyFactoryFactory()の意味を説明するか、自分自身を読むためのリンクを提供していただければ幸いです。

前もって感謝します!

4

1 に答える 1

2

http://nhibernate.info/doc/nh/en/index.html#configuration-optional-outerjoin

データベースがANSIまたはOracleスタイルの外部結合をサポートしている場合、外部結合フェッチは、データベースとの間のラウンドトリップの数を制限することによってパフォーマンスを向上させる可能性があります(データベース自体によって実行される作業が増える可能性があります)。外部結合フェッチを使用すると、多対1、1対多、または1対1の関連付けによって接続されたオブジェクトのグラフを単一のSQLSELECTで取得できます。

デフォルトでは、オブジェクトをロードするときにフェッチされるグラフは、リーフオブジェクト、コレクション、プロキシを含むオブジェクト、または循環が発生する場所で終了します。

特定の関連付けの場合、XMLマッピングでfetch属性を設定することにより、フェッチを構成(およびデフォルトの動作をオーバーライド)することができます。

http://nhibernate.info/blogs/nhibernate/archive/2008/11/09/nh2-1-0-bytecode-providers.aspx

ProxyFactoryFactoryは、プロキシの作成方法を指定するだけです。

于 2012-04-27T16:01:36.307 に答える