注册 登录
编程论坛 ASP.NET技术论坛

关于IIS下上传excel的问题

cxw89401326 发布于 2012-03-14 14:01, 683 次点击
我写了个upload控件用于上传文件,写了段程序在本地运行没有错误,但是在IIS上面部署发布之后总是提示
Microsoft Jet 数据库引擎找不到对象'C:\Windows\SysWOW64\inetsrv\Excel导出全部数据111.xls'。请确定对象是否存在,并正确地写出它的名称和路径。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.OleDb.OleDbException: Microsoft Jet 数据库引擎找不到对象'C:\Windows\SysWOW64\inetsrv\Excel导出全部数据111.xls'。请确定对象是否存在,并正确地写出它的名称和路径。

源错误:


行 129:        OleDbDataAdapter oada = new OleDbDataAdapter(" SELECT * FROM [Sheet1$]", strConn);
行 130:        DataSet ds = new DataSet();
行 131:        oada.Fill(ds);
行 132:        // conn.Close();
行 133:        return ds;
 
我郁闷的找了下这个文件夹发现是在IIS部署下的文件夹,我把要上传的文件考进去份就不报错,但是发布在网上不能总是考进去啊。求哥哥姐姐们帮助下啊
我上传的代码是
string strConn;
        strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + this.FileUpload1.PostedFile.FileName.ToString() + "';Extended Properties='Excel 8.0;IMEX=1';";
        string a = "";
        OleDbConnection conn = new OleDbConnection(strConn);
        OleDbDataAdapter oada = new OleDbDataAdapter(" SELECT * FROM [Sheet1$]", strConn);
        DataSet ds = new DataSet();
        oada.Fill(ds);
        return ds;
1 回复
#2
cxw894013262012-03-20 16:41
<identity impersonate="true" userName="administrator" password="dazhong"/>
我看了,加入这句话就好了
1