我想上传一个excel文件。
我在我的本地机器上有一个ASP.NET测试站点,在那里上传很好。
但是,当我将同一个站点放到服务器计算机上,然后尝试上载时,它会给我一条错误消息:"Microsoft.ACE.OLEDB.12.0不在本地机器上注册“
下面是我的连接字符串(用于localhost):
cn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fullpathname + ";Extended Properties=;Excel 12.0;HDR=No;IMEX=1");这在服务器(Microsoft.JET.OLEDB.4.0)上工作,但在本地主机上也会出现错误,因此反之亦然:
cn = new OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;Data Source=" + fullpathname + ";Extended Properties=;Excel 12.0;HDR=No;IMEX=1");我尝试过谷歌这个,但找不到一个好的解决方案,尝试了一些答案,如改变构建配置,仍然不起作用。现在,在我的visual studio中,构建配置设置为“任意CPU" (引用此所以:问题)。
我的服务器机器没有安装Microsoft office,这会是个问题吗?
提前谢谢。
发布于 2011-12-13 08:14:05
您需要首先将Excel文件上载到服务器上,然后您的方法将读取位于服务器上的excel文件。
从Excel文件(.xsl或.xlsx)在ASP.NET中读取和显示数据
共享excel文件上传的“YourFileFolder”,并添加具有读写权限的‘网络服务’帐户
问候
发布于 2014-06-30 11:49:51
我得到了同样的错误,在谷歌搜索后,我得到了问题的解决方案。我通过在下面的链接中安装"2007 Office系统驱动程序:数据连接组件“来纠正这个问题。http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=23734
https://stackoverflow.com/questions/8485570
复制相似问题