Microsoft Office Interop Excel不保存在Windows Server 2008中

时间:2013-08-27 11:19:09

标签: c# asp.net excel office-interop

我正在使用microsoft office interop excel在ASP.NET C#中创建excel文件。当我在Visual Studio 2010中运行应用程序时,一切都成功。我已经在我自己的IIS服务器上发布了我的Web应用程序,没关系。但是,当我在 Windows Server 2008 中发布应用程序时,检测到问题。    我在互联网上找了很多,我已经完成了以下工作,但问题仍未解决:

  1. 我已将应用程序池标识设置为 LocalSystem 。在run-> mmc -32 - >组件服务 - >我的电脑 - > DCOM配置 - > Microsoft Excel应用程序 - >右键单击 - 属性窗口:in" Identity"选项卡我已经检查了此窗口中的所有单选按钮。

  2. 我已将应用程序池标识设置为 NetworkService ,并且我再次检查了所有以前的单选按钮。

  3. 在run-> mmc -32 - >组件服务 - >我的电脑 - > DCOM配置 - > Microsoft Excel应用程序 - >右键单击 - 属性窗口:"安全"标签:我为 INTERACTIVE,NETWORK SERVICE,IIS_IUSRS 用户提供了本地午餐本地激活

    以下是我使用 Interop Excel

  4. 的代码
    Excel.Application xlApp = new Excel.Application();
    object misValue = System.Reflection.Missing.Value;
    
    Excel.Workbook xlWorkBook = xlApp.Workbooks.Add(misValue);
    Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
    
    Workbook.SaveAs(Server.MapPath("DownloadFolder\\" + fileName + "_siyahi.xls"));
    

1 个答案:

答案 0 :(得分:1)

我发现了我的问题。在我的Windows服务器系统区域设置尚未使用美国,我在代码中设置了 worksheet.cells.NumberForm =“0.00”

xlWorkSheet.Cells[rowNumber, 4].NumberFormat = "0.00";

服务器不知道数字格式。我已将格式更改为英语(美国)当前位置更改为美国,我的问题已解决。