2009-10-31 28 views
4

曼寧正在運行一個特殊的「NHibernate的在行動」 $ 10。 NHibernate的在行動是在2009年2月發佈的NHibernate的V1.2。目前,NHibernate達到了V2.1。這本關於V1.2的書是否足夠適用於NHibernate的當前版本。我不想浪費我的時間和金錢在一本關於不推薦或不相關的功能的書上。NHibernate V1.2中的「NHibernate in Action」一書在2009年10月還是相關的?

我是一個完整的NHibernate的小白,但我不是一個陌生的ORM的一般概念。

更新:

我買的書,並從我讀過的2.x版系列是測試版書發佈時的量小。本書的作者們指出了1.x和2.x之間的一些配置差異。從迄今爲止我閱讀的內容來看,我推薦這本書給任何想要一本關於NHibernate的書。

+1

嗨Ben,感謝您的更新,並且很高興您在本書中找到了價值。大部分內容非常適用於NHibernate 2.x,但很遺憾,我們沒有時間更新樣本並覆蓋更改。第二版應該排除所有這些...... :) – tobinharris 2009-11-01 16:53:25

回答

6

是的,它仍然是相關的。您可以在其中找到關於ORM系統的核心定義。

也有很多關於映射和解決像繼承映射,集合的映射,緩存等

1

一些挖我發現this post,其鏈接到this blog,這實際上給了幾位後常見問題的例子關於NH2.1的詳細信息,但沒有銷售點。這是NHibernate在我看來的主要問題 - 他們不是爲了大規模銷售自己,而是爲了「保存在家庭中」,你必須挖掘開發者的博客。

反正發行說明是你們告訴一下。 releasenotes.txt包含整個歷史,從這裏2.0和2.1的一些採摘:

  • .NET 1.1不再支持
  • Nullables.NHibernate不再支持(使用可空類型的.NET 2.0)
  • NHibernate的.Expression命名更名爲NHibernate.Criterion
  • <nhibernate>部分,在App.config中,不再支持,將被忽略。對於配置文件和App.config中配置架構現在是相同的,並且在app.config節名稱是:「冬眠」
  • <hibernate-configuration>有不同的模式和名稱cheked
  • 配置屬性不再由前綴的所有屬性如果之前你會指定「hibernate.dialect」,現在你只指定「方言」
  • NHibernate的將返回長COUNT(*)查詢SQL Server上
  • 各種類被感動命名空間
  • 各種類之間有已被重命名(以匹配Hibernate 3.2名稱)
  • AutoFlush不會發生在事務之外 - 數據庫事務永遠不可選,所有與數據庫的通信都必須發生在事務內部,無論您是讀取還是寫入數據。 (這個可能會影響你在書中讀到的內容,see this question
  • 情況下......那麼......其他......結束在SELECT子句

大約有一百人,但沒有什麼會影響你,如果你不嘗試升級從1.2到2.1。

0

我剛剛買了這本書,並發現它非常有用和相關。無論如何,很多重要的東西都是概念。我更大的抱怨是,我使用流利的nhibernate,所以本書中許多xml和屬性映射和配置與我無關。