日期:2014-05-17  浏览次数:20533 次

C# web调用excel时出现问题
开始的时候在服务器上打开提示权限不够
后来在web.config中加入了下面的代码
<System.Web>  
<identity impersonate= "true " userName= "administrator " password= "password " />  
</System.Web>

然后在服务器上打开没有问题了
但是在别的机器上打开还是存在问题

后来发现只要我用的电脑远程桌面连接了服务器 打开就没有问题 关掉远程又出现错误

我操做EXCEL的具体内容是
我在服务器上有一个EXCEL做好的模版
然后从数据库查询到数据,写入到这个EXCEL
把修改好的EXCEL另存到服务器上
然下载这个保存好的EXCEL

------解决方案--------------------
下载

string fileName = "xxx.xls";
string filePath = Server.MapPath(fileName );

FileInfo fileInfo = new FileInfo(filePath);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);
Response.AddHeader("Content-Length", fileInfo.Length.ToString());
Response.AddHeader("Content-Transfer-Encoding", "binary");
Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
Response.WriteFile(fileInfo.FullName);
Response.Flush();
Response.End()