程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> DNN模塊開發系列文章(7)——用CodeSmith Templates進行編碼

DNN模塊開發系列文章(7)——用CodeSmith Templates進行編碼

編輯:關於ASP.NET

在利用CodeSmith Templates進行代碼編寫之前,我們應該先完成數據表的設計。因為CodeSmith Templates是根據數據表的字段來生成相應代碼的。

首先根據《DNN模塊開發系列文章(1)——分析設計》中對MyCompany_Article文章信息表的定義在SQL Server數據庫中進行設計。記住要設計好主外鍵,特別是與Modules表的關聯。

其次,我們還可以將程序所用到存儲過程先編寫好。在編寫存儲過程時,我們可以利用CodeSmith Templates中StoredProcedures.cst模版進行編寫存儲過程。不過它編寫好的代碼好像和我通常用的命名規則不一樣,所以我利用它生成的部分代碼,如變量定義部分。這個文章模塊的功能比較簡單,就是添加、編輯、刪除、查看文章,並能列舉出這個模塊的全部文章。所以我們可以利用5個對應的存儲過程來完成,它們是:

MyCompany_Article_Add  添加

MyCompany_Article_Update  編輯

MyCompany_Article_Delete  刪除

MyCompany_Article_Get  獲取一篇文章

MyCompany_Article_GetByModules 獲取該模塊的全部文章

大家可以試著先編寫這些存儲過程,在這個系列完成後我會給出全部代碼。在編寫時要注意所有的數據庫對象前都需要加上“dbo.”,在存儲過程和表的命名上,我們也應該遵循“公司名_模塊名_功能名稱”的原則,遵循良好的命名規則不但代碼看起來可讀性更高,而且在後期我們只制作數據庫安裝腳本時可以方便的利用查找替換的辦法快速生成數據庫安裝腳本。

利用CodeSmith Templates進行編程,我們當然要利用到CodeSmith這個代碼生成利器。你可以在這裡 http://www.codesmithtools.com/ 獲得它。使用CodeSmith Templates的過程和簡單,首先我雙擊需要用到的模版。通常,我先從Info類入手,雙擊Vb BLL Info Class.cst模版。首先我們需要選中MultiSourceTable,挑選我們所建立的文章信息表MyCompany_Article,如下圖:

1、點擊MultiSourceTable屬性彈出Table Picker選擇窗口,選擇表所在的數據庫,選擇表。如果沒有數據庫,可以點擊添加。

2、添加數據庫連接

3、輸入ObjectQualifer(任意輸,好像沒用),點擊Generate生成代碼

4、將這段代碼復制到ArticleInfo.vb文件中

利用Vb DataProvider.cst生成DataProvider.vb文件代碼。在生成時我們設置IncludeList為false,不生成獲取全部文章列表的方法。將生成好的代碼復制到DataProvider.vb中的相應位置,替換代碼中“MyCompany_”前綴。

我們再分別利用Vb BLL Controller Class.cst和Vb SqlDataProvider.cst生成ArticleController.vb和SqlDataProvider.vb中代碼,方法和前一種相同。在生成SqlDataProvider代碼時,我們還需要修改一下對應的存儲過程名稱,因為我們命名規則和他的不一樣。

現在我們已經完成了大部分邏輯層和數據訪問層代碼,剩下就只有表示層的代碼了。我們分別修改Article.ascx、ArticleEdit.ascx和Settings.ascx這三個控件,添加一些asp.net控件進去完成設計要求的功能。現在就和開發其它asp.net程序一樣了,沒有什麼其它技巧和難點。只是在編寫時注意參考一下DNN其它模塊的代碼,看看他們都是怎樣的結構,DNN Project Templates也為我們添加了不少代碼,我們填充完剩下的部分整個模塊就算是完成了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved