c# - 根据列名提取excel表格单元格值
问题描述
我有以下内容 - 我有一个包含列和数据的 Excel 表。表头结构(包含列名)并不完全简单(列名不在一行中 - 请查看屏幕截图),这似乎造成了问题。基本上,当项目、国家、货币作为列名位于表的第一行时,事情会按预期工作。
所以我想做的是以下 - 我有一个特定的项目名称值,我想提取项目列下的所有表行(屏幕截图中的第 3 行)具有这个特定值。我现在的代码是这样的(它在表格标题只是一行时运行,与屏幕截图不同):
DataTable assetLines = _template.AsEnumerable().Where(x => x.Field<string>("Column1") == "XX").CopyToDataTable();
在这里,Column1 只是一个占位符,我首先尝试使用“Item”,但后来发现使用此表格式列名称为:“reportedLine/id/”、“Column1”(用于国家/地区)、“Column2”(用于货币)...等等。所以我也尝试在上面的代码行中使用“reportedLine/id” (因为这将是等价的)“Item”,但assetLines 仍然是空的。实际的表有正确格式的数据(你可以忽略“XX” 在代码中)。我在这里错过了什么?谢谢你。
解决方案
推荐阅读
- ruby-on-rails - 控制器的未定义局部变量或方法“参数”
- javascript - 要单击图像图标,react-datepicker 的输入框不起作用
- continuous-integration - Bitbucket / 我看不到管道中的工件
- java - 如何通过 WiFiP2P 为客户端/服务器调用相同的功能?
- python - python Problem Set 1 Part C 中的 MIT 编程
- html - 当容器 ul 可见时绘制 svg 线条
- c# - 在重定向期间在 RestSharp 中保留授权标头
- eclipse - Eclipse IDE BUG - 优化级别,调试级别弹出到 NONE
- angular - 找不到模块的 NgModule 元数据中的错误('DeviceProfileConfigurationModule')
- java - 如何在 Java 中的网络摄像头上运行训练有素的 Tensorflow 模型