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