mercredi 16 novembre 2016

c# show textbox depending on sql value

I´m trying to show some textboxes depending on the value of a column in sql, the code i have is de following:

private void build_Load(object sender, EventArgs e) 
{
    con.Open();
    SqlCommand cmd = con.CreateCommand();
    cmd.CommandType = CommandType.Text;
    cmd.CommandText = "select prumos from dbo.modelos";
    SqlDataReader dr = cmd.ExecuteReader();


    if (dr.HasRows)
    {

        var check = dr["prumos"].ToString();

        textBox13.Visible = check == "2";
        textBox18.Visible = check == "2";
        textBox17.Visible = check == "2";
        label16.Visible = check == "2";
        return;
    }
    else if (dr.HasRows)
    {
        var check = dr["prumos"].ToString();
        textBox13.Visible = check == "3";
        textBox18.Visible = check == "3";
        textBox17.Visible = check == "3";
        textBox14.Visible = check == "3";
        textBox16.Visible = check == "3";
        textBox15.Visible = check == "3";
        label16.Visible = check == "3";
        label20.Visible = check == "3";
        return;
    }
    con.Close();

When i run the app i get the error:

Invalid read attempt when data is not present.

i tried to add:

    dr.Read();

but if i do the app wont acces the database,

Can anyone help,

Thanks in advance.

Aucun commentaire:

Enregistrer un commentaire