質問

ただ、NHiberateを学び始めました。各データベースのテーブルに対して適切なのhbm.xml設定ファイルを書くために、むしろ退屈そうです。

問題はNHibernateのは、テーブルに読み込まれ、自動的に関係し、必要な設定ファイルだけでなく、データベースのマッパークラスを取得することができますか?プログラマが、まだ最初に地上多くの作業を行う必要がありますようです。それから私はNHiberateのテンプレートを持っCodesmith渡って来ましたの?それがギャップを埋めるのか?

役に立ちましたか?

解決

あなたはコードテンプレートを使用することができますが、これはまだ痛みの私見を作成します。最良の方法は、流暢NHibernateはを使用することです。彼らは、慣例により、コンフィギュレーションを使用して新しい自動マッパー機能を持っています。マッピングファイルは、それはちょうどあなたが似た名前を使用して、テーブル名にエンティティ名を変換する方法のルールを定義することができます仮定を行いません。

他のヒント

コード生成が本当によくそのギャップを埋めることができ、私はCodeSmithを使用し始めたが、私は<のhref =「http://www.mygenerationsoftware.com」のrel =「nofollowをnoreferrer」に移動して、彼らは、有料アイテムと判断しました> MyGenerationする。私のアプローチは、彼らがまだ存在しない場合は、マッピングファイル、およびGENクラス、最初のコード生成をDBを攻撃することです。それはプロトタイプのための素晴らしい本当にすぐに行く何かを、取得したテストデータを作成します。

マッピングファイル、クラスとDBは、多くの場合、その後の手によって変更されています。いくつかの例では、私は、コード生成がCIの一部として動作するようになって試してみた - しかし、あなたは、あなたが手に細工されたコードの変更をしているパート場所についての規律もない限り、それを行うのは難しい証明しています。部分クラスは助けたが、それでもPROBは、同じページにチーム全体を取得するには、誰があなたがロールバックし、マージすることができたとしても、そのコードはツールによって上書きされているのが好きなんます。

私はCodeSmithのために働く

... MyGenerationはそれがあまりにもサポートしていないことを意味する永遠で更新されていないことを心に留めておいてください。 CodeSmithは完全にその製品やテンプレートをサポートしています。これは、すべてのテンプレートのバグもCodesmithによって固定され、検証されることを意味します。

おかげ

-Blake Niemyjski

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top