Выпадающий список сбрасывается на autopostback C#
У меня есть выпадающий список, который заполняется выбором другого выпадающего списка.
Сначала я очищаю этот выпадающий список, а затем заполняю его, и у меня есть еще несколько таких же, которые связаны с другими выпадающими списками, и другие отлично работают, кроме последнего, который при определенных выбранных индексах сбрасывается до первого значения.
Я установил autopostback в true, но не знаю, что еще делать, и я не получаю никакого результата от базы данных mysql.
То, что я пытаюсь сделать с этим последним выпадающим списком, - это вернуть значения поля в таблице БД, если они найдены, в зависимости от нескольких критериев, найденных в предложении where.
Что я уже пробовал:
String connString = System.Configuration.ConfigurationManager.ConnectionStrings["web"].ToString(); conn = new MySql.Data.MySqlClient.MySqlConnection(connString); conn.Open(); queryStr = ""; queryStr = "SELECT * FROM avance_actividad where idProyecto='" + idproy + "' and idObjetivo='" + obj.SelectedIndex + "' and idResultado='" + res.SelectedIndex + "' and idActividad='" + act.SelectedIndex + "'"; cmd = new MySql.Data.MySqlClient.MySqlCommand(queryStr, conn); //con.Open(); var reader = cmd.ExecuteReader(); while (reader.Read() && reader.HasRows) { // here could be problems if database value is null es.Text = reader["estado"].ToString(); com.Text = reader["comentario"].ToString(); por.Text = reader["porcentaje"].ToString(); } conn.Close();
Member 10850253
Я думаю, что нашел одну проблему, но у меня все еще есть та же проблема.
Проблема в том, что в событии selectedindex change я использовал индекс этого поля.
Вместо вызова события selected index changed я использовал кнопку, но даже в этом случае после выбора в этом выпадающем списке значения в нем сбрасываются.
Kornfeld Eliyahu Peter
Вы использовали какой-нибудь AJAX на своей странице? Если нет - или если вы использовали его неправильно - у вас, вероятно, есть полный пост об изменении значения, и это сбрасывает страницу обратно к оригиналу...
Richard Deeming
Ваш код уязвим для SQL-инъекция[^]. НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.
Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
Шпаргалка по параметризации запросов | OWASP[^]