Я пытаюсь добавить столбец к существующему DataRow
в C #. После этого столбец будет заполнен единственным значением из моей базы данных.
DataRow dr уже существует, и столбец «COLNAME» также существует.
comTBP - это моя SqlCommand
.
dr["COLNAME"] = Convert.ToInt32(comTBP.ExecuteScalar());
Все работает нормально, если в моей базе данных есть значение и ExecuteScalar () может получить это значение. Если я тестирую этот код на моем сервере разработки (локальном), он также работает, если ExecuteScalar () возвращает null или DBNull и значение моего нового столбца равно 0. Но проблема возникает, если я развертываю свой код на производственном сервере. Если я сделаю все так же, с той же базой данных он выдает исключение с сообщением о том, что он не может преобразовать DBNull в Int32.
У меня вопрос: почему эта ошибка появляется на рабочем сервере, а не на моем локальном сервере разработки?