Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Сообщение об ошибке: не удалось преобразовать значение параметра из строки в логическое значение

Автор вопроса: user279521Ответов: 1

Я получаю сообщение об ошибке при попытке обновить запись из asp.net в базу данных SQL. Единственное обновляемое логическое значение:

cmdAddUser.Parameters.Add(new SqlParameter("@Active", SqlDbType.Bit));
cmdAddUser.Parameters["@Active"].Value =
    Convert.ToBoolean(cbAddUserActiveUser.Checked);

Тип данных для @Active в базе данных - "бит". Любые идеи?

  • @ user279521: На самом деле вы не указываете, какую ошибку вы получаете. Попробуйте опубликовать информацию об исключении, которую вы получаете, чтобы мы могли определить, является ли это проблемой синтаксического анализа (при вызове ToBoolean) или чем-то на стороне базы данных. casperOne 28.06.2010
  • Не удалось преобразовать значение параметра из строки в логическое значение. это сообщение об ошибке. user279521 28.06.2010
  • Дикое предположение, но попробуйте Convert.ToBoolean(cbAddUserActiveUser.Checked.ToString()); Jason Evans 28.06.2010
  • @ Джейсон .... Не повезло .... Та же ошибка user279521 28.06.2010
  • Как насчет того, чтобы попробовать без convert.toboolean? Разве .checked уже не является логическим значением? Tommy 28.06.2010
  • Я думаю, что casperOne запрашивает трассировку стека, чтобы мы могли увидеть, что вызывает ошибку - Convert.ToBoolean или .Value = x. Adam Fox 28.06.2010

Ответы

Ответ 1 · рейтинг 2 · harriyott

Длинный выстрел - у вас есть другой параметр, который задан как строка, но является битовым столбцом в фактической таблице?

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы