Sprawdzenie TextBox'ow czy IsNullOrEmpty

0

Cześć wszystkim.

Mam taki kod:

            OleDbCommand o_cmd = new OleDbCommand("insert into projects (Imie_uzytkownika, Nazwisko_uzytkownika, Login_uzytkownika, Haslo_uzytkownika, Typ_konta) values(@a,@b,@c,@d,@e)", my_con);

            int i = o_cmd.ExecuteNonQuery();

            if (i > 0)
            {
                if (string.IsNullOrEmpty(sText) || string.IsNullOrEmpty(TextBox1.Text) || string.IsNullOrEmpty(TextBox2.Text) || string.IsNullOrEmpty(TextBox3.Text) || string.IsNullOrEmpty(TextBox4.Text))
                {
                    Label6.Text = "Dane wprowadzone niepoprawnie. Uzupełnij dane.";
                }
                else
                {
            o_cmd.Parameters.AddWithValue("a", TextBox1.Text);
            o_cmd.Parameters.AddWithValue("b", TextBox2.Text);
            o_cmd.Parameters.AddWithValue("c", TextBox3.Text);
            o_cmd.Parameters.AddWithValue("d", TextBox4.Text);
            o_cmd.Parameters.AddWithValue("e", sText);
                    Label6.Text = "Dane wprowadzone pomyślnie";
                }
            }
            my_con.Close();

            TextBox1.Text = "";
            TextBox2.Text = "";
            TextBox3.Text = "";
            TextBox4.Text = "";
        }

Chciałbym, aby sprawdzał wypełnienie formularza i jeśli, któryś z pól byłby pusty to wyświetlał komunikat, a jeśli nie to zapisywał wszystko w bazie danych. Jednak kod nie działa. Co jest źle?

2

Najpierw sprawdzaj, czy dane są prawidłowe a potem wykonuj ExecuteNonQuery();. To tak na start co zauważyłem.

1

Po pierwsze - to co napisał @gswidwa1 - najpierw robisz executeNonQuery() a poźniej dodajesz parametry? Po drugie - stwórz sobie metodę, która przeleci po wszystkich kontrolkach typu TextBox i w pętli sprawdzi czy są w nich dane. Polecam również skorzystać z ErrorProvider.

1 użytkowników online, w tym zalogowanych: 0, gości: 1