我在VS-2015 asp.net中有一个小项目 - c#,用于读取excel文件数据。当我将它作为localhost运行时它工作正常。但托管到FTP后,它无法正常工作,给出错误,如
Microsoft Access数据库引擎无法打开或写入文件''。它已由其他用户独占打开,或者您需要获得查看和写入其数据的权限。
我的连接字符串 - XLSX文件
String MyExcelFile = Server.MapPath(MyInput1.PostedFile.FileName); // Not Working
String MyExcelFile = System.IO.Path.GetFullPath(Server.MapPath(MyInput1.PostedFile.FileName)); // Not Working
String MyExcelFile = MyInput1.PostedFile.FileName; // Working good in localhost
但在发布到FTP后给出错误。
String StrConn2 = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + MyExcelFile + "; Extended Properties=\"Excel 12.0; HDR=YES; \"";
String MyExcelSheet = "[Sheet1$]";
String MySQLSelect = "select * from " + MyExcelSheet;
答案 0 :(得分:2)
这是因为Microsoft Office(Excel)未安装在服务器上。所以你需要在服务器上安装microsoft office(Excel)或install Microsoft Access Database。
要下载Microsoft Access数据库,请转至:https://www.microsoft.com/en-US/download/details.aspx?id=13255