SubSonic是在NET 2.0時代的一個DB存取元件,
只要是系統軟體,就是逃不過透過SQL語法進行查詢的命運,
然後SQL語法不論在搜尋資料、新增、更新、刪除資料,
通常都需要在Run Time的情況下才能知道SQL語法的正確性
(也就是你必須透過執行程式才能夠知道你的SQL語法的正確性)
這元件主要就是要避免這個問題,讓開發人員好上手操作。
官方網站:http://subsonicproject.com/
目前的版本是2.2版(2009/6/30)
最近剛好有專案遇到使用,所以寫一些使用心得出來
1.安裝
首先從官方網站下載新版的SubSonic,2.2版目前提供的為zip檔案
由於是免安裝的軟體,你可以選擇自己習慣的地方放入,例如
C:\Program Files\SubSonic\SubSonic2.2(筆者是習慣這樣放)
2.依附Visual Studio 2005
開啟Visual Studio 2005,並且選擇「工具」=>「外部工具」
按下「加入」,自訂一個看的懂得名稱,例如SubSonic 2.2
設定的屬性可以參考下圖
標題:SubSonic 2.2 (可任意變更)
命令:C:\Program Files\SubSonic\SubSonic 2.2\SubCommander\sonic.exe (這是根據你放置的路徑會有所不同)
引數:generate /out DAL\Generated (這是表示將會存取資料庫,資料庫中的Schame轉化成Class放入DAL\Generated的資料夾下)
出始目錄:$(ProjectDir) (專案目錄,表示當你進行產生Class的動作時,會將檔案放置的位置)
勾選「使用輸出視窗」(建議勾選,未勾選的話產生Class的時候不會提示任何訊息到結束)
勾選「提示輸入引數」(未勾選的話會根據「引數」上的參數直接產生Class)
3.建立Config檔案
Web.Config有三個區段需要修改
a.「configuration-configSections」底下(此段需要完全寫入)
<configuration>
<configSections>
...(略)
<!-- SubSonic使用 -->
<section name="SubSonicService" type="SubSonic.SubSonicSection, SubSonic" requirePermission="false"/>
</configSections>
...(略)
</configuration>
b.「configuration」底下(設定資料庫連線字串用,可根據括弧內的設定調整)
<connectionStrings>
<add name="(資料庫名稱1)" connectionString="Data source=(主機IP);Database=(資料庫名稱2);USER ID=(帳號);password='(密碼)'" providerName=""/>
</connectionStrings>
c.「configuration」底下(括弧內可調整,注意必須與資料庫設定的name屬性相同)
<SubSonicService defaultProvider="(資料庫名稱1)">
<providers>
<clear/>
<add name="(資料庫名稱1)"
type="SubSonic.SqlDataProvider, SubSonic"
connectionStringName="(資料庫名稱1)"
generatedNamespace="(命名空間)"/> <!-- 例如SubSonic.Generated -->
</providers>
</SubSonicService>
範例圖
4.利用SubSonic產生Class檔案
點選「工具」,可以找到剛剛建立的「SubSonic 2.2」,
點下後會出現參數小視窗,通常直接按下確定就可以了。
完成後,重新整理一下專案總管,就會看到SubSonic根據DB Schema產生的Class物件
因為我使用的是北風資料庫,所以打開Class Employee就會看到SubSonic自動產生的內容。
注意的是,命名空間是根據Web.config設定產生的
剩下的下回再繼續,好累=.=a