예제 #1
0
        public bool TryLogin(int account, int password)
        {
            if (!CheckTable(userTableName))
            {
                return(false);
            }

            string[] items =
            {
                "Account",
                "Password",
            };

            string[] selectKeys =
            {
                "UserId",
            };

            string[] selectValues =
            {
                $"'{account}'",
            };

            var dr = SelectWhereEqual(userTableName, items, selectKeys, selectValues);

            while (dr.Read())
            {
                string drAccount  = dr.GetString(dr.GetOrdinal("Account"));
                string drPassword = dr.GetString(dr.GetOrdinal("Password"));

                if (account.ToString() == drAccount && password.ToString() == drPassword)
                {
                    if (!m_UserTable.HasDBRow(account))
                    {
                        DBUser dbUser = new DBUser(account, password);
                        dbUser.Load();
                        m_UserTable.AddDBRow(account, dbUser);
                    }

                    m_DBTableManager.Init(account);
                    m_UserData = GetDBRow <DBUser>(account);

                    //CloseSqlConnection();

                    return(true);
                }
            }

            return(false);
        }