Exemple #1
0
        /// <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);
        }
Exemple #2
0
        /// <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);
        }