其他分享
首页 > 其他分享> > excel行中的名称与表列名称相同

excel行中的名称与表列名称相同

作者:互联网

我有一个用于从excel读取值并将其插入到表格中的代码.我选择第一行作为表格的列名.在这里我要检查excel工作表第一行中的名称是否与表格的列名相同?
这是我阅读Excel的代码.

FileStream stream = 
    File.Open(Server.MapPath("~/App_Data/YoutubeVideo/" + fileName), 
    FileMode.Open, FileAccess.Read);

IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
excelReader.IsFirstRowAsColumnNames = true;
DataSet result = excelReader.AsDataSet();
excelReader.Close();

dt = result.Tables[0];
dt = dt.Rows.Cast<DataRow>()
            .Where(row => !row.ItemArray.All(field => field is System.DBNull))
            .CopyToDataTable();

在此先感谢您的帮助.

解决方法:

要在将数据复制到数据集之前进行检查,请使用excelReader.GetName(0)获取第一列的名称.

编辑:

看来您使用的是Excel Data Reader,显然不能实现IDataReader的所有方法.

由于这不是一个完全实现的数据提供程序,因此在加载到DataTable之后,您将不得不检查名称.

在这种情况下,可以使用if(dt.Columns [0] .ColumnName ==“ Name”).

标签:sql-server-2008,sql,c,excel
来源: https://codeday.me/bug/20191122/2061461.html