在Selenium C#中使用Excel数据阅读器时,似乎没有选项可以将我的第一行设置为列名

J.F*_*ven 2 excel selenium c#-4.0 excel-reader

我正在使用Excel Data Reader插件读取和解析excel数据,并且我想将“ IsFirstRowAsColumnNames”设置为true,然后发现我创建的IExcelDataReader对象没有这样的定义。请参见下面的代码“ XXXXXXXXXX”。我想将第一行设置为列名。现在我有了“ Column1”,“ Column 2”,……“ Column n”。

       public DataTable ExcelDataTable(string filename)
     { 

    FileStream stream = File.Open(filename, FileMode.Open, FileAccess.Read);
    IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlRead(stream);     
    excelReader.XXXXXXXXXXXX= true;
    DataSet result = excelReader.AsDataSet();
    DataTableCollection table = result.Tables;
    DataTable resultTable = table["Person"];      
    return resultTable;

        }
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

J.F*_*ven 6

[已解决]此属性已移至AsDataSet()方法上的配置参数:

确保项目具有对ExcelDataReader.DataSet包的引用

用IsFirstRowAsColumnNames删除代码行

将对AsDataSet()的调用更改为如下所示:

var result = reader.AsDataSet(new ExcelDataSetConfiguration() {
    ConfigureDataTable = (_) => new ExcelDataTableConfiguration() {
        UseHeaderRow = true
    }
});
Run Code Online (Sandbox Code Playgroud)