public LoginState Login(string name, string pwd, out int type) { //设置type默认值,如果为此值时,不会使用 type = -1; //根据用户名进行对象的查询 ManagerInfo mi = miDal.GetByName(name); if (mi == null) { //用户名错 return(LoginState.NameError); } else { if (mi.MPwd.Equals(MD5Helper.EncrytString(pwd))) { //密码正确 type = mi.MType; return(LoginState.OK); } else { //密码错误 return(LoginState.PwdError); } } }
/// <summary> /// 插入数据 /// </summary> /// <param name="mi">ManagerInfo类型的对象</param> /// <returns>受影响的行数</returns> public int Insert(ManagerInfo mi) { //构造Insert语句 string sql = "INSERT INTO ManagerInfo(MName,MPwd,MType) VALUES(@name,@pwd,@type)"; SQLiteParameter[] ps = //使用数组初始化器 { new SQLiteParameter("@name", mi.MName), new SQLiteParameter("@pwd", MD5Helper.EncrytString(mi.MPwd)),//将密码进行md5加密 new SQLiteParameter("@type", mi.MType) }; //执行插入操作 return(SqliteHelper.ExecuteNonQuery(sql, ps)); }
/// <summary> /// 修改数据 /// </summary> /// <param name="mi">ManagerInfo类型的对象</param> /// <returns>受影响的行数</returns> public int Update(ManagerInfo mi) { //定义参数集合,可以动态添加元素 List <SQLiteParameter> listPs = new List <SQLiteParameter>(); //构造update的sql语句 string sql = "UPDATE ManagerInfo SET MName = @name,"; listPs.Add(new SQLiteParameter("@name", mi.MName)); //判断是否修改密码 if (!mi.MPwd.Equals("这是原来的密码吗?")) { sql += " MPwd = @pwd,"; listPs.Add(new SQLiteParameter("@pwd", MD5Helper.EncrytString(mi.MPwd))); } //继续拼接sql语句 sql += " MType = @type WHERE MId =@id"; listPs.Add(new SQLiteParameter("@id", mi.MId)); listPs.Add(new SQLiteParameter("@type", mi.MType)); //执行语句并返回结果 return(SqliteHelper.ExecuteNonQuery(sql, listPs.ToArray()));//ToArray将集合转化成数组 }