天天看點

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

環境:

&nbsp&nbspvisual studio 2010

&nbsp&nbsp在打開vs2010之後,我們可以在“工具”菜單下找到“擴充管理器,搜尋:mindscape nhibernate model designer 下載下傳安裝即可。安裝完成後,在向項目中添加新項時如果我們拉到最下方我們會看到如下界面:

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

&nbsp&nbsp左側工具欄部分切換到【伺服器資料總管】,連接配接上你想要擷取資料結構的資料庫,就會看到展示出來的資料庫内容:

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

&nbsp&nbsp拖動你想要的表到設計器主界面,如下圖:

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

即可擷取到資料庫表對應的實體。

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]
NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

小注:

&nbsp&nbsp如果不生成配置檔案直接運作第4步中代碼,會報出下面的錯誤:

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

兩者之間的操作與之前一樣

&nbsp&nbsp

,那麼生成表的主鍵字段是uniqueidentifier類型的:

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

&nbsp&nbsp如果在主鍵類型你選擇的是guid

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

&nbsp&nbsp那麼此時,你實體類中的主鍵字段是guid類型的,如果你通過guid.newguid()給你主鍵字段指派會報出如下錯誤:

&nbsp&nbsp那麼這種情況應該處理呢?畢竟大多數的主鍵都是guid類型的啊,此時需要修改你模型主鍵的生成規則:

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

在這裡修改為guid類型的就可以了

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

&nbsp&nbsp此時通過實體操作資料是不需要填充主鍵字段的,你填充了也更新不進去。

NHibernate利用Mindscape.NHibernateModelDesigner實作資料庫與實體之間的轉換及操作一、Mindscape.NhibernateModelDesigner安裝二、根據資料庫表結構生成實體并通過實體進行操作三、根據實體生成資料庫表結構并通過實體進行操作四、[NHibernate操作文檔及demo]

&nbsp&nbsp本文中有什麼不對的地方歡迎支出,謝謝