Asp.net mvc 4 MVC4中的OleDbExecption
我有一个代码,可以下载一个excel文件,它会选择它的所有数据在一边。这是我的密码:Asp.net mvc 4 MVC4中的OleDbExecption,asp.net-mvc-4,file-upload,oledb,oledbexception,Asp.net Mvc 4,File Upload,Oledb,Oledbexception,我有一个代码,可以下载一个excel文件,它会选择它的所有数据在一边。这是我的密码: string conn = string.Empty; if (Path.GetExtension(path).ToLower().Equals(".xls")) { conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
string conn = string.Empty;
if (Path.GetExtension(path).ToLower().Equals(".xls"))
{
conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
+ path +
";Extended Properties=\"Excel 8.0;HDR=YES;\"";
}
else
{
conn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
+ path +
";Extended Properties=\"Excel 12.0;HDR=YES;\"";
}
string strselect = "Select * from [Sheet1$]";
using (OleDbConnection excelCon = new OleDbConnection(conn))
{
try
{
excelCon.Open();
using (OleDbDataAdapter exDA = new OleDbDataAdapter(strselect, excelCon))
{
exDA.Fill(_data);
}
}
catch (OleDbException oledb)
{
throw new Exception(oledb.Message.ToString());
}
finally
{
excelCon.Close();
}
}
当我调试它时,在excelCon.Open()中代码>我在捕获中被传输,并获得OLEDBEException:“Microsoft Jet数据库引擎无法打开文件“”。该文件已由其他用户以独占方式打开,或者您需要查看其数据的权限。”
你能指出哪里不对劲吗?我没有打开的文件,我检查了它的设置,但它可以被任何人打开。你们中有人遇到过这种错误吗?excel文件已经被人打开,您可以;我不能访问它我该怎么办?谁在打开它?我没有真正打开文件/它正被系统中的某个进程使用,错误显示allwell是的,它被打开以获取内部数据,但我该怎么办?您打开它以获取数据,然后在执行任何您想执行的操作后关闭,否则每次都会出现此异常