2017-01-05 5 views
0

Nhiberate v2.0からかなり古いプロジェクトをv4.1にアップグレードしてパフォーマンスをさらに向上させたいと考えています。誰も役に立つヒントやハウツー、ベストプラクティスを持っていますか?もう1つの選択肢は、Entity Frameworkに切り替えることです。どのくらいの数のアップグレードがかかるだろうと推測していますか?nhibernateをv2.0からv4.1にアップグレード

+0

NHがほとんど停滞していて、非同期操作を提供していないとすれば、問題は、いつではなく、EFへの移行を開始するべきかどうかです。非同期操作は、Webアプリケーションに大きなメリットをもたらします。なぜなら、データベース応答を待つ間に、より少ないスレッド/ CPUを使用できるからです。 –

+0

私たちはWindowsアプリケーションを開発していますが、この場合EFも優れていますか? – Marie

+0

さらにあなたのアプリケーションがデータベースを待っているのをブロックすると、エンドユーザーは即座に遅れに気付くでしょう –

答えて

0

アップグレード自体については、そのままの状態で動作するはずです。多くの改善点や新機能があるため、アップグレードする必要があります。

Entity Frameworkへの切り替えに関しては、多くのことが非常に異なっています。私はあなたがNHibernate 2.0でLINQを使っていなかったと思う。 Entity Frameworkでは、LINQを使用する必要があります。さらに、マッピングはEntity Frameworkで属性とコードを使用して全く異なる方法で行われます。

+0

他の投稿のためにボックスの外で動作するかどうかわかりませんでした(例:http://stackoverflow.com/questions/7062243/upgrade- 〜nhibernate〜3-1)。だから我々は参照を交換する必要がありますか? – Marie

+0

さて、あなたはLINQを使っていましたか?もしそうなら、メソッド名はLinqの代わりにQueryになるはずです(正しくリコールすれば)。 Criteria APIまたはHQLのみを使用した場合は、同じである必要があります。マッピングには下位互換性がありますが、新しいものがあるかもしれません。 –

+0

もう1つの変更点はIEsi Collectionsです:NH 4は現在、.NETのISet インターフェイスを使用しています。これはIEsiを必要としません。 –

関連する問題