CodeSmith的使用
CodeSmith是一款優秀的代碼生成工具。在ORM中,它能幫助我們生成實體類、XML配置文件,從而簡化了我們一部分的開發工作。下面簡要說說它的基本用法。
背景概述:下面示例用的是SQLServer2005Express數據庫。另外:還需生成實體類所需的NHibernate.cst等文件,下載地址為(https://files.cnblogs.com/abluedog/nhibernate_template.rar)。
步驟如下:
1.開啟CodeSmith后,打開Schema Explorer(架構瀏覽器窗口)。如下圖:
注:若初次使用本軟件,則默認有一個PetShop數據庫。上圖所顯示的則是我新建的名稱Test的示例。(Test是我自己在使用CodeSmith時命名的,而非要映射到的實際數據庫名。)
2.將生成實體類所需的cst文件添加進來到Template Explorer中。操作如下:點擊下圖中打開的文件夾【鼠標放上去的提示”Create Template folder Shortcut“】,將模板文件添加進來。如下圖:

3.點擊上圖中右側圖標(Manage Data Sources)打開Data Source Manager.如下圖:

4.點擊“Add”按鈕,增加新數據庫。出現如下圖所示的Data Source窗口:

5. 填寫Name、Provirder Type 、Connection String。填寫的Name就如同上面第一個圖中顯示的DataBase中Test,Provirder Type為數據庫的類型。連接字符串也可以點擊右側的“...”按鈕進行配置。配置界面如下:

本例為SqlServer2005.填寫完后如下圖:

用戶也可以點擊“Test”按鈕進行測試填其正確性。
6.右擊Template Explorer(模板瀏覽器),下的nhibernate_template中的nhibernate.cst文件,選擇Excute出現下圖窗口:

Class下的OutputDerectory:即生成的實體類的路徑,SourceDatabase即上面填寫的Name、Provier Type 、Connection String 中的Name。Assembly即生成文件的默認程序集名稱。NameSpace即為實體類的命名空間。另外:ForceId默認為True就行(如果表中的ID為主鍵)。它的作用是強制NHibernateSample所表示的數據庫的所有表需要有主鍵(是否是自增我沒有測試過)。RemoveTablePrefix,看意思即是一處表的前綴,這里我把它刪除了。它更具體的作用我沒有深入研究。
7.點擊下面“Genrate”按鈕,即是制定的目錄下生成了實體類(本例為D:\CodeSmith)。
8.若你是使用NHibernate作為你ORM的選擇,你還需在生成的實體類前加上virtrue,否則程序會報錯。
大體過程就這些。也比較簡單。希望對初次使用的朋友有所用。另外,有些圖不是很會截取,所以圖片不太完整(比如若右擊Nhibernate.cst顯示的菜單的圖),不過我能截的我都盡力截了。大家就湊合著看看吧!相信你們的悟性比我要高。哈哈!
浙公網安備 33010602011771號