none
Textbox não atualiza (Update) no Banco de Dados RRS feed

  • Pergunta

  • Tenho um formulário que carrega dados do SQL.

    Ao clicar no botão encaminhar (nesse formulário), os dados deveriam ser atualizados no Banco.

    Se eu determinar direto na string (Exemplo - SET ControlSituacao = '2') os valores que quero atualizar, funciona perfeitamente.

    Porém se eu altero o valor da TextBox (tbxObservacaoProt) esse valor não atualiza e continua o mesmo que trouxe do banco.

    O que está errado ou faltando no meu código ?

    Obs: Ainda não tratei alguns pontos como Try Catch, estou apenas testando as conexões.

    Grato.

    protected void BtEncaminhar_Click(object sender, EventArgs e)
            {
                //convertendo hora
                var Hora = DateTime.Now.Hour.ToString();
                var novaHora = Hora.PadLeft(2, '0');
    
                var Minutos = DateTime.Now.Minute.ToString();
                var newMinute = Minutos.PadLeft(2, '0');
    
                var Segundos = DateTime.Now.Second.ToString();
                var novoSegundo = Segundos.PadLeft(2, '0');
    
                string Conexao = Session["SQL"].ToString();
                
                //Atualiza dado no banco NvControleAtual
                SqlConnection conn = new SqlConnection(Conexao);
                SqlCommand comando = new SqlCommand("UPDATE NvControleAtual SET ControlSituacao = '2', ControlObserv = '" + tbxObservacaoProt.Text + "' Where ControlNumControle = '" + LblNumControle.Text + "' ", conn);
                
                conn.Open();
                comando.ExecuteNonQuery();
                conn.Close();
    
                ClientScript.RegisterClientScriptBlock(GetType(), "", "alert('Processo Encaminhado com sucesso');document.location='NVControlePesquisarDV.aspx';", true);
                
            }


    sexta-feira, 4 de janeiro de 2019 11:04

Respostas

  • Resolvido.

    Cada vez que o evento click do meu botão (encaminhar) era ativado,  o meu código passava mais de uma vez pelo PAGE_LOAD, preenchendo novamente com os dados do banco de dados.

    Inseri um If postback e deu certo.

    Segue código que inseri no load da página.

     protected void Page_Load(object sender, EventArgs e)
            {
    
                if (!IsPostBack)
                {
                    DropDownListMod.Enabled = false;
                    Session["SQL"] = "Data Source=10.23.199.12;Initial Catalog=NovoControle;Persist Security Info=True;User ID=sa;Password=xxx";
                    SetFields();
                }
    
                
            }

    • Marcado como Resposta Lucas Star M sexta-feira, 4 de janeiro de 2019 17:44
    sexta-feira, 4 de janeiro de 2019 17:44