C# 使用EPplus对每个单元格进行数据验证,以检查值是否可用

C# 使用EPplus对每个单元格进行数据验证,以检查值是否可用,c#,asp.net-mvc,excel,epplus,C#,Asp.net Mvc,Excel,Epplus,我正在使用Epplus上传文件。我有两张.xlsx格式的表格。我想确保每个单元格都有值。例如,在我的excel中,我有下拉框。如果用户在第一张表格中有详细信息,第二张表格是空的。但是这个空表格只有一个值,是使用此下拉框错误地添加到表格中的。所以在这个阶段当它进入这个循环时,它将显示对象空引用错误 for (int rowIterator = 2; rowIterator <= noOfRow; rowIterator++) { if (int.TryP

我正在使用Epplus上传文件。我有两张.xlsx格式的表格。我想确保每个单元格都有值。例如,在我的excel中,我有下拉框。如果用户在第一张表格中有详细信息,第二张表格是空的。但是这个空表格只有一个值,是使用此下拉框错误地添加到表格中的。所以在这个阶段当它进入这个循环时,它将显示对象空引用错误

    for (int rowIterator = 2; rowIterator <= noOfRow; rowIterator++)
     {

         if (int.TryParse(s.Cells[rowIterator, 1].Value.ToString(), out n) && int.TryParse(s.Cells[rowIterator, 2].Value.ToString(), out n))
        {
          Pss.Pbr = Convert.ToInt32(s.Cells[rowIterator, 1].Value);
          Pss.Amount = Convert.ToInt32(s.Cells[rowIterator, 2].Value);
         Ps.Add(Pss);

        }
}

对于循环中的(int rowditerator=2;rowditerator,检查单元格是否为空,如下所示:

bool allRangeHasValue=true;
for (int rowIterator = 2; rowIterator <= noOfRow; rowIterator++)
{
    for(int col =1;col<=s.Dimension.End.Column;col++)
    {

      if(String.IsNullOrWhiteSpace(s.Cells[rowIterator, col]?.Value?.ToString())
      {
          allRangeHasValue=false;
          break;
      }
    }
    if(!allRangeHasValue)
    {
      break;
    }
}
bool allRangeHasValue=true;

对于循环中的(int rowIterator=2;rowIterator,检查单元格是否为空,如下所示:

bool allRangeHasValue=true;
for (int rowIterator = 2; rowIterator <= noOfRow; rowIterator++)
{
    for(int col =1;col<=s.Dimension.End.Column;col++)
    {

      if(String.IsNullOrWhiteSpace(s.Cells[rowIterator, col]?.Value?.ToString())
      {
          allRangeHasValue=false;
          break;
      }
    }
    if(!allRangeHasValue)
    {
      break;
    }
}
bool allRangeHasValue=true;

对于(int rowIterator=2;rowIterator)您正在尝试添加用户输入验证,还是尝试在代码中签入单元格是否有值?您正在尝试添加用户输入验证,还是尝试在代码中签入单元格是否有值?