Excel单元格空格检查C#

我正在阅读一个Excel文件,然后将内容存储在数据库中。 问题是excel表栏中的空格检查。 一些列是空格,对于他们DB值将为空。 在读取单元格时,我有一个检查空值的方法,但不知如何,它不能正常工作。

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起,空检查不起作用。 在debugging时,我可以看到第13&14列的null ,仍然!= null检查未validation, if语句中的代码得到执行,我得到空指针exception。 我已经尝试了许多其他的东西为空检查,但没有不按预期工作。 从过去的一天挣扎,但似乎没有任何工作。 所有的variables都被定义为String 。 请指教。

  try { if(!string.IsNullOrEmpty(workSheet.Cells[rowIterator, 13].Value.ToString())) { store.OpenTime = workSheet.Cells[rowIterator, 13].Value.ToString(); } } catch(NullReferenceException) { store.OpenTime = SomeValue; } 

尝试以下操作:

 var x = string.IsNullOrEmpty(workSheet.Cells[rowIterator, 13].Value; if(value != null) { store.OpenTime = workSheet.Cells[rowIterator, 13].Value.ToString(); } 

要么

 Type t = workSheet.Cells[rowIterator, 13].value.GetType(); if (t.Equals(typeof(string))) { var x = string.IsNullOrEmpty(workSheet.Cells[rowIterator, 13].Value; if(value != null) { store.OpenTime = workSheet.Cells[rowIterator, 13].Value.ToString(); } }