Example #1
0
    public void createAccount()
    {
        if (
            String.IsNullOrWhiteSpace(firstName.text) ||
            String.IsNullOrWhiteSpace(lastName.text) ||
            String.IsNullOrWhiteSpace(username.text) ||
            String.IsNullOrWhiteSpace(email.text) ||
            String.IsNullOrWhiteSpace(password.text)
            )
        {
            failedPanel.SetActive(true);
            failedPanel.GetComponentInChildren <Text>().text = "Please complete all fields!";
        }
        else
        {
            failedPanel.SetActive(false);

            FirebaseConnect.get <AccountTemplate>("/users/" + username.text, existing => {
                if (!(existing is AccountTemplate account))
                {
                    failedPanel.SetActive(false);
                    AccountTemplate user = new AccountTemplate(firstName.text, lastName.text, username.text, email.text, password.text);
                    FirebaseConnect.put("/users/" + username.text, user);
                    clearUI();
                    SceneManager.LoadScene("LoginScreen");
                }
        /// <summary>
        /// 反序列化
        /// </summary>
        /// <param name="data"></param>
        /// <returns></returns>
        private static AccountTemplate Deserialize(byte[] data)
        {
            MemoryStream ms = new MemoryStream();

            ms.Write(data, 0, data.Length);
            ms.Seek(0, SeekOrigin.Begin);
            BinaryFormatter b         = new BinaryFormatter();
            Object          objectTry = b.Deserialize(ms);
            AccountTemplate template  = objectTry as AccountTemplate;

            return(template);
        }
Example #3
0
        public IActionResult Signup(AccountTemplate model)
        {
            var user = model.Create();

            bool exist = Data.DataContext.Instance.Accounts.Any(x => x.Username == user.Username);

            if (!exist)
            {
                Data.DataContext.Instance.Accounts.Add(user);
                int row = Data.DataContext.Instance.SaveChanges();
                if (row == 1)
                {
                    return(RedirectToAction("Preview", model));
                }
            }
            return(View());
        }
        private void ReceiveData(object obj)
        {
            StateObject1 state = obj as StateObject1;

            try
            {
                int lenght = -1;
                lenght = state.client.Receive(state.buffer);
                AccountTemplate template = new AccountTemplate();
                template = Deserialize(state.buffer);
                int    i  = QueryTheDatabase(template);
                byte[] vs = new byte[1];
                vs[0] = Convert.ToByte(i);
                state.client.BeginSend(vs, 0, 1, SocketFlags.None, new AsyncCallback(SendData), state);
            }
            catch
            {
                return;
            }
        }
 private int QueryTheDatabase(AccountTemplate account)
 {
     try
     {
         string        connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=.\UserDatabase.mdf;Integrated Security=True";
         string        commandText      = "AccountVerif";
         SqlConnection sqlConnection    = new SqlConnection(connectionString);
         SqlCommand    sqlCommand       = new SqlCommand();
         sqlCommand.Connection  = sqlConnection;
         sqlCommand.CommandText = commandText;
         sqlCommand.Parameters.Add(new SqlParameter("@account", System.Data.SqlDbType.VarChar, 50));
         sqlCommand.Parameters.Add(new SqlParameter("@password", System.Data.SqlDbType.VarChar, 50));
         sqlCommand.Connection.Open();
         int i = sqlCommand.ExecuteNonQuery();
         return(i);
     }
     catch
     {
         return(-1);
     }
 }