1

我正在使用内联查询将包含标头的 excel 数据加载到数据表中。

      string Query;

      Query = string.Format("Select [Col1],[Col2],[Col3] FROM [{0}]", "Sheet1$");
      OleDbCommand Ecom = new OleDbCommand(Query, oleDbConn);
      oleDbConn.Open();

      DataSet ds = new DataSet();

      OleDbDataAdapter oda = new OleDbDataAdapter(Query, oleDbConn);

      oleDbConn.Close();
      oda.Fill(ds);
      DataTable Exceldt = ds.Tables[0];

现在而不是使用这个硬编码的行:

      Query = string.Format("Select [Col1],[Col2],[Col3] FROM [{0}]", "Sheet1$");

我想制作一类列标题,然后在 SQL 语句中使用它。

谁能建议如何实现这种方法?

4

1 回答 1

2

您可以使用 LinqToExcel。https://code.google.com/p/linqtoexcel/

然后您可以使用 Linq 查询并输入 Columns。

像这样:

var excel = new ExcelQueryFactory("excelFileName");
var ds = from c in excel.Worksheet<Sheet>()
                       select c;
于 2015-04-21T07:51:42.217 回答