【问题标题】:Finding a value with Epplus用 Epplus 寻找价值
【发布时间】:2017-03-02 03:01:56
【问题描述】:

我正在尝试使用代码在使用 Epplus 和 Linq 的工作表中查找某个值的地址。该值在 D (4) 列中,但可以在任何单元格中 但是显示如下错误

Linq 代码

var query3 = (from cell in sheet.Cells["d:d"]
    where cell.Value.ToString().Equals("CRÉDITOS")
    select cell);

结果视图中的错误:

   at ExcelTests.Form1.<>c.<button1_Click>b__1_0(ExcelRangeBase cell)
   at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
   at System.Linq.SystemCore_EnumerableDebugView`1.get_Items()

【问题讨论】:

  • 听起来您正在尝试对空值执行.ToString()
  • 就是这样..非常感谢。

标签: c# linq epplus


【解决方案1】:

正如@krillgar 建议的那样,您应该重写linq 语句以包括Value 返回null 的可能性。

var query3 = 
    from cell in sheet.Cells["d:d"]
    where cell.Value?.ToString() == "CRÉDITOS"
    select cell;

【讨论】:

    猜你喜欢
    • 2016-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-10
    • 2020-07-08
    相关资源
    最近更新 更多