Nhiberate v2.0からかなり古いプロジェクトをv4.1にアップグレードしてパフォーマンスをさらに向上させたいと考えています。誰も役に立つヒントやハウツー、ベストプラクティスを持っていますか?もう1つの選択肢は、Entity Frameworkに切り替えることです。どのくらいの数のアップグレードがかかるだろうと推測していますか?nhibernateをv2.0からv4.1にアップグレード
答えて
アップグレード自体については、そのままの状態で動作するはずです。多くの改善点や新機能があるため、アップグレードする必要があります。
Entity Frameworkへの切り替えに関しては、多くのことが非常に異なっています。私はあなたがNHibernate 2.0でLINQを使っていなかったと思う。 Entity Frameworkでは、LINQを使用する必要があります。さらに、マッピングはEntity Frameworkで属性とコードを使用して全く異なる方法で行われます。
他の投稿のためにボックスの外で動作するかどうかわかりませんでした(例:http://stackoverflow.com/questions/7062243/upgrade- 〜nhibernate〜3-1)。だから我々は参照を交換する必要がありますか? – Marie
さて、あなたはLINQを使っていましたか?もしそうなら、メソッド名はLinqの代わりにQueryになるはずです(正しくリコールすれば)。 Criteria APIまたはHQLのみを使用した場合は、同じである必要があります。マッピングには下位互換性がありますが、新しいものがあるかもしれません。 –
もう1つの変更点はIEsi Collectionsです:NH 4は現在、.NETのISet
- 1. エンタープライズライブラリのアップグレード - v1.0からv4.1へ
- 2. Spring.NET - 1.1からNHibernate 2.0へのアップグレード時のアップグレード?
- 3. NHibernate 3.2へのアップグレード
- 4. Asp.netアップグレード後のNHibernate CPUパフォーマンス
- 5. Fluent NHibernate NH3.0へのアップグレードalpha
- 6. NHibernateを1.2から3.2にアップグレードする際の注意点は何ですか?
- 7. NHibernate 3.1へのアップグレード時にNHibernateマッピングが中断される
- 8. Kinect v2.0 FaceFrameResult.FaceRotationQuaternion NAN
- 9. Vue.js v2.0デリメータ
- 10. ESP8266とUSBasp V2.0
- 11. Codeigniter 1.7.1から3.6にアップグレード
- 12. jQueryロードの問題とOracle ApEx v4.1
- 13. Magento v2.0から製品カテゴリIDを取得するSOAP API
- 14. Elasticsearch - バージョン5.0からのアップグレード。 5.2へのアップグレード - aptのアップグレードによるバージョンのダウングレード
- 15. エンティティライブラリv4.1内の別のフロッファにローリングログをアーカイブする方法
- 16. anglejsコードを1.0.3から1.4.9にアップグレード
- 17. sonarqubeを4.5.5から5.6にアップグレード
- 18. SonarQubeを4.5.7から5.6にアップグレード
- 19. 3.0.6から3.1.0にcodeigniterをアップグレード
- 20. Liferayテーマを5.2から6.1にアップグレード
- 21. Subversionサーバーを1.7から1.8にアップグレード
- 22. elasticsearchを1.7.xから5.2.xにアップグレード
- 23. Djangoを1.1から1.2にアップグレード
- 24. Pimcoreを3.1から4.2にアップグレード
- 25. プロダクションサーバーをASP.NET 2からASP.NET 4にアップグレード
- 26. Magentoを1.1.8から1.5にアップグレードする
- 27. Tapestryアプリケーションを5.0.18から5.3.2にアップグレード
- 28. Railsプロジェクトを3.0から3.1にアップグレード
- 29. Artifactoryを2.6.2から4.7.4にアップグレード
- 30. PHPをバージョン5.2から5.3にアップグレード
NHがほとんど停滞していて、非同期操作を提供していないとすれば、問題は、いつではなく、EFへの移行を開始するべきかどうかです。非同期操作は、Webアプリケーションに大きなメリットをもたらします。なぜなら、データベース応答を待つ間に、より少ないスレッド/ CPUを使用できるからです。 –
私たちはWindowsアプリケーションを開発していますが、この場合EFも優れていますか? – Marie
さらにあなたのアプリケーションがデータベースを待っているのをブロックすると、エンドユーザーは即座に遅れに気付くでしょう –