1:安装最新版 System.Data.OleDb
2:调用代码如下
[HttpPost, HttpGet]
public ObjectResult SelExcelData()
{
JObject jobjResult = new JObject();
var dt = ExcelHelper.SelExcelData("\\\\192.168.2.1\\abc\\aaa.xlsx");
if(dt != null)
{
for (var i=0;i<dt.Rows.Count;i++)
{
var r = dt.Rows[i][6].ToString();
}
}
jobjResult.Add("DataTable", JsonConvert.SerializeObject(dt));
return new ObjectResult(jobjResult.ToString());
}
/// <summary>
/// 读取Excel文件
/// </summary>
/// <param name="url">\\\\192.168.2.1\\abc\\aaa.xlsx</param>
public static DataTable SelExcelData(string url)
{
string getStr = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={url};Extended Properties='Excel 12.0;HDR=YES;IMEX=1;'";
try
{
OleDbConnection conn = new OleDbConnection(getStr);
string Sql = "SELECT * FROM [Sheet1$] ";
OleDbCommand cmd = new OleDbCommand(Sql, conn);
OleDbDataAdapter dpa = new OleDbDataAdapter(cmd);
DataSet Des = new DataSet();
dpa.Fill(Des);
var data = Des.Tables[0];
return data;
}
catch (Exception ex)
{
LoggerHelper.Error(ex, $"UpdateStationData->");
return null;
}
}