关于“三层结构”的调用问题

easywind8088 easywind8088 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
小弟初学三层结构,对于三层结构之间的调用问题还是很不明白,特来讨教!
程序如下:



SQLServerDAL层有两个类,SysUser、SQLHelper,代码如下:

//SQLHelper类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Collections;
using System.Configuration;

namespace HUALUDISC.SQLServerDAL
{
public abstract class SQLHelper
{
//数据库连接字符串
public static readonly string Con = System.Configuration.ConfigurationSettings.AppSettings["SQLServer"];

//用于缓存参数的HASH表
private static Hashtable parmCache = Hashtable.Synchronized(new Hashtable());

private static void PrepareCommand(SqlCommand cmd, SqlConnection conn, SqlTransaction trans, CommandType cmdType, string cmdText, SqlParameter[] cmdParms)
{
if (conn.State != ConnectionState.Open)
conn.Open();

cmd.Connection = conn;
cmd.CommandText = cmdText;

if (trans != null)
cmd.Transaction = trans;

cmd.CommandType = cmdType;

if (cmdParms != null)
{
foreach (SqlParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
}

public static int ExecuteNonQuery(SqlTransaction trans, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters)
{
SqlCommand cmd = new SqlCommand();
PrepareCommand(cmd, trans.Connection, trans, cmdType, cmdText, commandParameters);
int val=cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return val;
}

}

//SysUser类
namespace HUALUDISC.SQLServerDAL
{
public class SysUser : ISysUser
{
private ArrayList arrSysUser;

public SysUser()
{
arrSysUser=new ArrayList();
}

private const string SQL_SELECT="Select * From [SysUser] Order by [所在部门] ";
private const string SQL_CHECK_UserLogin="Select * From [SysUser] Where [所在部门]=@Department, [用户名]=@UserName, [密码]=@Password ";
private const string SQL_SELECT_ID = "Select * From [SysUser] Where [ID]=@ID";

private const string PARM_ID="@ID";
private const string PARM_UserName="@UserName";
private const string PARM_UserAllName="@UserAllName";
private const string PARM_Descript="@Descript";
private const string PARM_Department="@Department";
private const string PARM_Password="@password";
private const string PARM_Role="@Role";
private const string PARM_Status="@Status";

public int SysUserLogin(string Department, string UserName, string Password)
{
//这里添加代码实现SQLHelper类里的ExecuteNonQuery()方法实现用户的登陆验证,我想用存储过程,如何实现啊??????


}
}
}
...全文
评论 14
收藏 已收藏
分享
返回顶部
easywind8088
C# 111,129 成员 642,539 内容