コード例 #1
0
        private void ButtonUpdate_Click(object sender, EventArgs e)
        {
            if (!ValidateData())
            {
                MessageBox.Show("You must use numbers in fields except for name.");
                return;
            }

            int result  = 0;
            var db      = new AccountDB();
            var dbError = db.Open();

            if (dbError.Number != 0)
            {
                var errorText = $"Cannot connect to database {Environment.NewLine}";
                errorText += $"Error Number: {dbError.Number}{Environment.NewLine}";
                errorText += $"Error Message: {dbError.Message}";

                MessageBox.Show(errorText);
            }
            else
            {
                if (db.Connected)
                {
                    var character = FillCharacterData();

                    // Se hovuer alguma alteração no nome, procura na db.
                    if (name != character.Name)
                    {
                        if (db.ExistCharacter(character.Name))
                        {
                            MessageBox.Show("Name is already in use.");
                            db.Close();

                            return;
                        }
                    }

                    result = db.UpdateCharacter(CharacterId, ref character);
                    MessageBox.Show("Character updated.");
                }
                else
                {
                    MessageBox.Show("Database is not connected.");
                }
            }

            db.Close();

            if (result > 0)
            {
                Close();
            }
        }