private void btnDeposito_Click(object sender, EventArgs e) { try { using (var contexto = new BankContext()) { var cartao = new Cartao(); double saldo = 0.0; Cartao cartao1 = null; Movimento movimento1 = null; foreach (var item in contexto.Cartoes) { if (item.NumeroCartao == int.Parse(textBoxNumCartaoMov.Text)) { saldo = item.Saldo; cartao1 = item; } } if (textBoxDeposito.Text == "") { movimento1 = new Movimento() { Levantamento = int.Parse(textBoxLevantamento.Text), ValorSaldo = saldo, Cartao = cartao1, }; if (saldo <= 0.0 || int.Parse(textBoxLevantamento.Text) > saldo) { MessageBox.Show("Não tem saldo suficite"); } else { saldo = movimento1.LevantamentoConta(); MessageBox.Show("Movimento efectuado com sucesso. \nEfectue novamente o Login para actualizar os dados. \nObrigado"); } textBoxLevantamento.ResetText(); } else if (textBoxLevantamento.Text == "") { movimento1 = new Movimento() { Deposito = int.Parse(textBoxDeposito.Text), ValorSaldo = saldo, Cartao = cartao1, }; saldo = movimento1.DepositoConta(); MessageBox.Show("Movimento efectuado com sucesso. \nEfectue novamente o Login para actualizar os dados. \nObrigado"); textBoxDeposito.ResetText(); } var dados = contexto.Cartoes.First(cartao => cartao.NumeroCartao == int.Parse(textBoxNumCartaoMov.Text)); dados.Saldo = saldo; contexto.AddRange(movimento1); contexto.SaveChanges(); } } catch (Exception msg) { MessageBox.Show(msg.Message); } }