2011-02-01 4 views
0

私はこれらの質問が何度も聞かれたことを知っていますが、質問のいくつかは6ヶ月以上あり、製品は進化しています。流行NHibernate with Legacyデータベース化合物の質問

私はデータベーススキーマを持っています。これは、実際のプロで新しく設計されたアーキテクチャーであり、Enterprise Architectに座っていて、必要なデータベースエンジンタイプに生成できる状態です。私はそれをダンプしたくない。その約3-4kのテーブル。

私は実際に多くの質問をしています。私は、NHibernateを使うとき、レガシーDBとうまく統合されたドメイン層を構築するために、AutomappingsとConventionsを使ったFluent NHibernateが最良の方法であることをスタックと様々なブログから読み取っています。私はそれが主観的だと知っていますが、それでもなお真ですか?

FHを使用して既存のデータベースにマップし、大規模でどのように動作するかを確認するためのサンプルプロジェクトまたはオープンソースプロジェクトはありますか?

また、私が行く前に、商用ツールセットを使用した経験がありますか?現時点での芸術の状態はどうですか?私はバンドル全体を見てきましたが、ドキュメントの多くはグリーンフィールド用です.FHが除外された場合、何が最良の選択になるのかを判断するのは難しいです。最良の選択肢を決定するために作成された正式な製品テスト、メトリック、レポート、経験数が必要です。

ありがとうございました。 ご協力いただければ幸いです。 ボブ。

答えて

1

レガシーデータベースに対してネイティブNHibernateマッピングとFNHを使用しました。 FNH、IMHOのメリットは、あなたがオートマッピング機能を使用できるときに本当に表現されます。レガシーデータベースの場合、スキーマの構築に使用されている堅い慣習があると仮定すると、カスタムのFluentNHibernate Conventionクラスを作成して、AutoMap機能と組み合わせて使用​​するのは比較的些細なことです。ただし、オートマップする必要はありません。また、ClassMap(および/またはAutoMapのオーバーライド)を使用すると、既存のスキーマに対処するために必要な柔軟性を得ることができます。もちろん、これは主観的です。 NHibernateのXMLマッピングファイルは、明示的にマッピングを管理しているので、レガシーアプリケーションに対して優れていると主張する人もいます。それぞれ自分自身に。私は両方をして、両方の長所/短所を見てきました。 NHibernateが選択されたO/RMであるとき、私はFNHを好む。

FNH(および他のNHibernateのプラクティス)の例については、SharpArchitectureを参照してください。私がソースを引っ張ってからしばらくしていましたが、最後に私がそれを見て回ったとき、それはNHibernateとFNHが可能なものの良い例でした。

+0

ありがとうございました。現実世界の忠実なアドバイスは、長い道のりを歩んでいます。 –

関連する問題