NHibernate使用之详细图解
本文檔適合初級開發者或者是第一次接觸NHibernate框架的朋友,其中NHibernate不是最新的版本,但是一個比較經典的版本?NHibernate?2.1.2,其中用紅線標注的部分一定要仔細看,這些都是容易忽略和出錯的地方,筆者在此給大家做了特殊標記。
NHibernate框架的介紹:http://baike.baidu.com/view/954535.htm
開發環境?Vs?2010?+?MsSql2005?+?NHibernate?2.1.2.
本示例的下載地址:點擊下載;NHibernate?2.1.2的下載地址:點擊下載;
目錄
步驟一、創建數據庫和映射的表。
步驟二、創建項目和實體類映射類以及類對應的映射文件。
步驟三、添加項目引用與NHibernate的dll文件。
步驟四、配置hibernate.cfg.xml文件(數據庫映射信息配置)無需配置web.config。
步驟五、創建和使用NHibernate.
步驟一、創建數據庫和映射的表。如圖:
數據庫:hibDB,映射表:people.
步驟二、創建項目和實體類映射類以及類對應的映射文件。
新建一個網站,網站創建之后,網站解決方案右鍵,選擇添加?=>?新建項目?=>?類庫
給類庫起名,本測試程序名稱為:Com.uuu9.nHibernate,然后把自帶的Class1.cs改名為創建映射表的名稱(映射實體類的名稱),本示例為People.cs,其中實體類的代碼為表屬性的set與get,如圖:
與之前寫的實體類不同的是此實體類每個屬性前面就加了virtual,虛方法或者屬性的關鍵字,子類可以從新定義(override),在這里必須有virtual?關鍵字,不然程序運行就會出錯。筆者判斷此原因可能是程序在運行時候此屬性被重新映射(定義),所以必須添加virtual關鍵字。
然后比較重要的一個步驟就是配置此實體類對應的映射文件,此映射xml文件名稱固定為“實體類.hbm.xml”,其代碼如圖:
實體類的屬性配置,其中“Com.uuu9.nHibernate”為上述所建類庫(生成程序集的名稱)的名稱。注意:每個實體類對應的映射文件“實體類.hbm.xml”,都要右鍵設置生成類型屬性為:嵌入的資源。如圖:
因為當作為一個資源被嵌入后,項目的默認命名空間與文件名就組成了資源訪問的完整名稱,NHibernate運行時會訪問資源的完整名稱,但如果不設置,程序就找不到映射文件,就會認為此類沒有設置映射,也就不能使用NHibernate操作。
步驟三、添加項目引用與NHibernate(版本2.1.2)的dll文件。
要引用的NHibernate的dll如圖:
其中都為必須引用的dll。
步驟四、配置hibernate.cfg.xml文件(數據庫映射信息配置)
hibernate.cfg.xml文件為NHibernate的配置文件,名稱固定,且必須放到Bin目錄中。內容如圖:
name可以自己隨意定義,
“NHibernate.Dialect.MsSql2005Dialect”可根據實際的數據庫的需要改為?2000Dialect、2008Dialect。
注意:“<mapping?assembly="Com.uuu9.nHibernate"/>”為實體類生成程序集的名稱,一直要寫正確,一定要有。
步驟五、創建和使用NHibernate
使用的代碼如圖:
至此NHibernate制作完畢。
本示例的下載地址:點擊下載;NHibernate?2.1.2的下載地址:點擊下載;
Orm框架相關文章鏈接:
1.NHibernate使用之詳細圖解
2.iBatis for net 框架使用
3.iBatis for Net 代碼生成器(CodeHelper)附下載地址
4.NBear簡介與使用圖解?
5.SubSonic框架使用圖解
6.GentleNet使用之詳細圖解
總結
以上是生活随笔為你收集整理的NHibernate使用之详细图解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c# 检测cpu使用率[测试通过]
- 下一篇: java中_null和“”的区别详解