Я читаю файл excel, и содержимое затем сохраняется в БД. Проблема заключается в проверке пространства в столбце Excel. Некоторые из столбцов являются пробелами, и для них значения DB будут равны нулю. У меня есть проверка на наличие нулевого значения при чтении ячеек, но почему-то она не работает должным образом.Проверка пробела ячейки Excel в C#
Код
if (workSheet.Cells[rowIterator, 12].Value != null)
store.WeeklyOff = workSheet.Cells[rowIterator, 12].Value.ToString();
if (workSheet.Cells[rowIterator, 13].Value != null)
store.OpenTime = workSheet.Cells[rowIterator, 13].Value.ToString();
if (workSheet.Cells[rowIterator, 14].Value != null)
store.CloseTime = workSheet.Cells[rowIterator, 14].Value.ToString();
В приведенном выше фрагменте кода я поставил нулевой чек значение для каждой ячейки. Проблема состоит в том, что столбец 12 также является пробелом, и эта проверка работает нормально, то есть if
условие является ложным, и оно перемещается в следующий оператор, но из столбца 13 и далее нулевая проверка не работает. Во время отладки я могу видеть null
для столбца 13 & 14, все еще != null
проверка не проверяется, и код в операторе if
выполняется, и я получаю исключение из null-указателя. Я пробовал много других вещей для нулевой проверки, но ничего не работает должным образом. Борьба с последнего 1 дня, но ничего не работает. Все переменные определены как String
. Пожалуйста, порекомендуйте.
Weird вопрос: если вы только чтение данных из таблицы, почему вы не используете OLEDB? – maniak1982
Также вы столкнулись с проблемой, если в этом индексе нет значения «Cell». Вам нужно будет выполнить нулевую проверку: 'if (workheet.Cells [rowIterator, 12]! = Null)' – maniak1982
Спасибо за ввод. Но поскольку я делаю это в первый раз, я искал некоторые уроки и делал то, что понял. Посмотрите на Oledb и попробуйте, как было предложено. В любом случае я попытался, как было сказано выше, удалять. Знать, но все равно. Он все еще выполняет условие внутри If, и я получаю исключение из null-указателя. – Gaurav