/// <summary> /// 登陆验证,返回验证结果 /// 登陆成功:返回LoginResult.Succeed的枚举,同时返回对应的User /// 登陆失败:返回 LoginResult.UserIDError或LoginResult.PwdError的枚举,并且返回User为null /// </summary> /// <param name="strID">帐号</param> /// <param name="strPWD">密码</param> /// <param name="user">用户对象(帐号或密码错误,返回null)</param> /// <returns></returns> public static LoginResult Login(string strID, string strPWD, out User user) { ViewUser vwUser = new ViewUser(true); LoginResult emStatus = LoginResult.UserIDError; user = null; vwUser.BaseCondition = "a.UserID='" + strID + "'"; switch (vwUser.Count) { case 0: break; case 1: user = vwUser.GetItem(0) as User; if (user.PWD.Equals(strPWD, StringComparison.CurrentCultureIgnoreCase)) //密码正确 { emStatus = LoginResult.Succeed; } else { user = null; emStatus = LoginResult.PwdError; } break; default: throw (new Exception("存在多个帐号相同的用户")); } return(emStatus); }
/// <summary> /// 获得用户 /// </summary> /// <param name="strColName">列名</param> /// <param name="strValue">用户或帐号</param> /// <param name="binclude"></param> private static User GetUser(string strColName, string strValue, bool binclude) { User user = null; ViewUser vwUser = new ViewUser(true); vwUser.BaseCondition = binclude ? (strColName + "='" + strValue + "'") : (strColName + "='" + strValue + "' AND IsCancel = 1"); if (vwUser.Count > 0) { user = vwUser.GetItem(0) as User; } return(user); }