Итак, в моей программе, наверное, около 50 текстовых полей в разных местах.Я знаю, как заменить одиночную кавычку чем-то (в данном случае '-> \'), но я думаю, что должен быть лучший способ сделать это, чем пройти и добавить определенный код для каждого отдельного текстового поля.Я должен сделать это, потому что, когда этот материал отправляется в базу данных, если есть одиночная кавычка, он выдает ошибку.Есть ли способ изменить поведение элемента управления TextBox по умолчанию, чтобы все текстовые поля в программе автоматически заменяли все одинарные кавычки на \ '?
РЕДАКТИРОВАТЬ:
string statement = "select count(*) from users where username='@username'";
MySqlCommand command = new MySqlCommand(statement, conn);
command.Parameters.AddWithValue("@username", username);
if (Convert.ToInt32(command.ExecuteScalar()) == 1)
Я играл спарамертеризованный код и это то, что у меня есть сейчас.Насколько я понимаю, строка оператора в основном такая же, как и раньше, но там, где я имел обыкновение иметь переменную «имя пользователя», я знаю, что использовал параметр (который я назвал @username), тогда команда была создана.Затем в файле parameters.addwithvalue он заменяет имя пользователя параметра тем, что находится в переменной username.К сожалению, это не работает для меня, и я не вижу, как это помогает, потому что имя пользователя все еще застревает в команде?
РЕДАКТИРОВАТЬ: нашел проблему, в утверждении, которое вам не нужнопоставить одинарные кавычки вокруг '@ username'
так, чтобы оно было:
string statement = "select count(*) from users where username=@username";