2012-01-17 15 views
7

現在、私たちは2つのデータベースを使用しています。 1つは既存の製品からもたらされるものなので、その製品を管理することはできません。もう一つは私たちが完全に支配しているものです。Entity FrameworkからNHibernateへの移動

現在、私たちは空間的な機能が必要なのでEF4 CTPを使用していますが、明らかにこれは製品コードでは使用できません。また、EFの最近のリリースでは、.NET Frameworkのそれ以降のリリース用であるため、前進の方法についてなされており、NHibernateに移動して空間アドオンを使用することを提案しています。

最初の質問は、学習曲線とツール間の移動に関するものです。私の目には、NHibernateは、それが何をしているのかがより目に見えているようですが、EFは典型的なMSスタイルで何をしているのでしょうか?

私は、クラスダイアグラムを使用して、私たちが管理しているデータベースを記述する方法を考えています。それからPOCO lassesを作成し、マッピングファイルを作成する必要があります。それは本当にまっすぐ進むのでしょうか?これらのマッピングファイルは、手動で作成する必要がありますか、またはPOCOクラスから作成するツールがありますか?

次の質問は既存のデータベースとここで何をするかです。 EFは、データベースのインポートとクラスの作成を容易にし、NHibernateのように簡単ですか?

場合、それは答え

我々はMS SQLデータベースを使用してのコントロールを持っているデータベースに影響を与えます。 私たちはOracleではなく、OracleのODAC Entity Frameworkコードを使用しています。

は、既存のデータベースのために非常に多くの

答えて

3

をありがとう、私はマッピングにFluent NHibernateを使用することをお勧めします。

はPOCOの生成と流暢マッピングの両方を行うtoolsありSharp Architectureプロジェクトにこの良い例がありますが、私はそれらのいずれかを試していないが、私はそれらについて読んだことがあります。

+4

NHibernate v3.2は、コード内でマッピングを作成するためのサポートが組み込まれているので、これを使用することをお勧めします。あなたがFluent NHibernateだけが持っているいくつかの機能が必要であることがわかっていない限り。私は最近、Fluent NHibernateから平らなNHibernateに移行しました。マッピングの構文が素晴らしくなく、ドキュメンテーションが不足していても、Fluent NHibernateの代わりに問題なく使えます。 –

+0

クール、私はNHibernateが今それを持っていたか分からなかった。 –

関連する問題