0
string path=Server.MapPath("../ExcelTemplate/DownloadExcelFiles/FacilitySetup" + ss + ".xls");
log.append("Mapped Path"+path, 100);
log.append("Start to SaveAs Worksheet", 100);
try
{
    ThisWorkBook.SaveAs("" + Server.MapPath("../ExcelTemplate/DownloadExcelFiles/FacilitySetup" + ss + ".xls") + "", Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, missing, missing, false, false, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange,
    missing, missing, missing, missing, missing);


    //ThisWorkBook.SaveAs(path, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, missing, missing, false, false,
    //    Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, missing, missing, missing, missing, missing);
}
catch (Exception exceptionObj)
{
    log.append("Exception During SaveAs" + exceptionObj.ToString(),100);
}
log.append("Worksheet SaveAs Successfully", 100);

笔记:

  1. 部分代码示例如上所示
  2. 我正在尝试下载excel文件
  3. 文件正常下载,但是当我在 IIS 服务器上运行相同的应用程序时,没有下载 excel 文件。
  4. 我在每一行都维护了日志
  5. 我在运行行(saveAs())期间发现正常执行不会进入下一行
  6. 即在 saveAs() 上出现问题

如何解决?

4

2 回答 2

0

尝试不使用 Server.MapPath,因为您已经有了物理路径

于 2013-07-12T11:54:44.403 回答
0

听起来你有一个死锁(而不是例外)。正如有人在评论中所说,在服务器环境中使用 Office 互操作是一个非常糟糕的主意。有关原因的大量信息,请参见: http: //support.microsoft.com/kb/257757 。查看ClosedXML

我最近遇到了下载 .xls 文件的问题。说明在这里:http: //support.microsoft.com/kb/2123563。谁知道呢,这里也可能是个问题。

于 2013-07-12T12:09:30.433 回答