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()方法中用到了一个存储过程其代码如下 [] [] |