ST_PageBase類和ST_ModuleBase類
本系統設計了一個基類Web站點中的所有頁面都可以直接或間接繼承此類從而允許以最少的代碼修改來約束整個站點並為之提供功能(可能包括提供一些標准的被許多頁面調用的使用程序方法也可能提供一些用戶識別和驗證的基本代碼)
下面是基類ST_PageBase的代碼其中UrlSuffix屬性用來獲取主機名或IP地址和服務器上ASPNET應用程序的虛擬程序根路徑UrlBase屬性在UrlSuffix前加了個字符串http://這樣就擁有了一個完整的路徑靜態方法public static bool CheckUser(string name string pwd)用來檢測數據庫用戶表中是否存在該用戶如程序所示
程序 ST_PageBasecs
public class ST_PageBase:SystemWebUIPage
{
public ST_PageBase()
{ }
private static string UrlSuffix
{
get
{
//獲取主機名或IP地址和服務器上ASPNET應用程序的虛擬程序根路徑並返回該字
//符串
return HttpContextCurrentRequestUrlHost +
HttpContextCurrentRequestApplicationPath;
}
}
public static String UrlBase
{
get
{
//返回具體路徑
return @http:// + UrlSuffix;
}
}
public static bool CheckUser(string namestring pwd)
{
bool authenticated = false;
//從文件WebConfig中讀取連接字符串
String ST_sqldb=ConfigurationSettingsAppSettings
[ConnectionString];
//創建Command對象
SqlCommand ST_mycommand = new SqlCommand()
//連接ST_GinShopManage數據庫
ST_mycommandConnection=new SqlConnection(ST_sqldb)
try
{
//打開連接
ST_mycommandConnectionOpen()
//調用存儲過程ST_ValidateUser檢驗賬戶的有效性
ST_mycommandCommandText=ST_ValidateUser;
ST_mycommandCommandType=CommandTypeStoredProcedure;
//存儲過程中要用到的參數
SqlParameter Name = new
SqlParameter(@nameSqlDbTypeNVarChar)
NameValue=nameTrim()
ST_mycommandParametersAdd(Name)
SqlParameter Password = new
SqlParameter(@pwdSqlDbTypeNVarChar)
PasswordValue=pwdTrim()
ST_mycommandParametersAdd(Password)
SqlParameter IsValid = new
SqlParameter(@IsValidSqlDbTypeInt)
//這個參數是輸出參數
IsValidDirection=ParameterDirectionOutput;
ST_mycommandParametersAdd(IsValid)
//執行存儲過程
ST_mycommandExecuteNonQuery()
if(((int)IsValidValue)==)
{
//賬戶有效
authenticated=true;
}
}
catch(Exception exc)
{
//重新拋出異常
throw(exc)
}
finally
{
//關閉數據庫連接
ST_mycommandConnectionClose()
}
//返回布爾值
return authenticated;
}
}
在CheckUser()方法中用到了一個存儲過程其代碼如下
[] []
From:http://tw.wingwit.com/Article/program/net/201311/15995.html