- ASP.NET項目開發全程實錄(第4版)
- 明日科技
- 1186字
- 2019-12-06 12:04:42
2.4 公共類設計
開發項目中以類的形式來組織、封裝一些常用的方法和事件,不僅可以提高代碼的重用率,也大大方便了代碼的管理。
2.4.1 Web.Config文件配置
為了使應用程序方便移植,為版本控制提供更好的支持,需要在應用程序配置文件(即Web.Config文件)中設置數據庫連接信息。連接數據庫代碼如下:

注意
應當使UId和password與本機上的SQL Server 2014的登錄名和密碼相對應。
2.4.2 數據庫操作類的編寫
在51電子商城網站中共建了5個公共類,具體如下。
CommonClass:用于管理在項目中用到的公共方法,如彈出提示框、隨機驗證碼等。
DBClass:用于管理在項目中對數據庫的各種操作,如連接數據庫、獲取數據集DataSet等。
GoodsClass:用于管理對商品信息的各種操作。
OrderClass:用于管理對購物訂單信息的各種操作。
UserClass:用于管理對用戶信息的各種操作。
下面主要介紹CommonClass類和DBClass類的創建過程,其他類參見本書附帶的資源包。
1. 類的創建
在創建類時,用戶可以直接在該項目中找到App_Code文件夾,然后單擊鼠標右鍵,在彈出的快捷菜單中選擇“添加新項”命令,在彈出的“添加新項”對話框中選擇“類”選項,并為其命名(以創建DBClass為例),單擊“添加”按鈕即可創建一個新類,如圖2.22所示。

圖2.22 “添加新項”對話框
注意
在ASP.NET中,App_Code文件夾專門用來存放一些應用于全局的代碼(如公共類),如果項目中沒有該文件夾,可以在項目上單擊鼠標右鍵,在彈出的快捷菜單中選擇“添加ASP.NET文件夾”→App_Code命令,添加一個App_Code文件夾。
2. CommonClass類
CommonClass類用于管理在項目中用到的公共方法,主要包括MessageBox方法、MessageBoxPage方法和RandomNum方法,下面分別介紹。
(1)MessageBox(string TxtMessage)方法
MessageBox方法用于在客戶端彈出對話框,提示用戶執行某種操作。代碼如下:
例程01 代碼位置:資源包\TM\02\B2C\B2C\App_Code\CommonClass.cs

(2)MessageBoxPage(string TxtMessage)方法
MessageBoxPage方法用于在客戶端彈出對話框,提示用戶執行某種操作或已完成了某種操作,并刷新頁面。代碼如下:
例程02 代碼位置:資源包\TM\02\B2C\B2C\App_Code\CommonClass.cs

(3)RandomNum(int n)方法
RandomNum方法用來生成由英文字母和數字組合成4位的驗證碼,常用于登錄界面,用于防止用戶利用注冊機自動注冊、登錄或灌水。代碼如下:
例程03 代碼位置:資源包\TM\02\B2C\B2C\App_Code\CommonClass.cs

3. DBClass類
DBClass類用于管理在項目中對數據庫的各種操作,主要包括GetConnection方法、ExecNonQuery方法、ExecScalar方法和GetDataSet方法,下面分別詳細介紹。
(1)GetConnection(string sString, int nLeng)方法
GetConnection方法用來創建與數據庫的連接,并返回SqlConnection類對象。代碼如下:
例程04 代碼位置:資源包\TM\02\B2C\B2C\App_Code\DBClass.cs

(2)ExecNonQuery(SqlCommand myCmd)方法
ExecNonQuery方法用來執行SQL語句,并返回受影響的行數。當用戶對數據庫進行添加、修改或刪除操作時,可以調用該方法。代碼如下:
例程05 代碼位置:資源包\TM\02\B2C\B2C\App_Code\DBClass.cs

(3)ExecScalar(SqlCommand myCmd)方法
ExecScalar方法用來返回查詢結果中的第一行第一列值。當用戶從數據庫中檢索數據,并獲取查詢結果中的第一行第一列的值時,可以調用該方法。代碼如下:
例程06 代碼位置:資源包\TM\02\B2C\B2C\App_Code\DBClass.cs

(4)GetDataSet(SqlCommand myCmd, string TableName)方法
GetDataSet方法主要用來從數據庫中檢索數據,并將查詢的結果使用SqlDataAdapter對象的Fill方法填充到DataSet數據集,然后返回該數據集的表的集合。代碼如下:
例程07 代碼位置:資源包\TM\02\B2C\B2C\App_Code\DBClass.cs

注意
在編寫DBClass類之前,需要引入命名空間System.Data.SqlClient,以便使用該命名空間中包含的類。引用該命名空間的代碼為:using System.Data.SqlClient。