首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从IIS运行应用程序(asp.net)时,无法创建excel文件

从IIS运行应用程序(asp.net)时,无法创建excel文件
EN

Stack Overflow用户
提问于 2012-01-04 14:23:43
回答 1查看 2.6K关注 0票数 1

从IIS运行应用程序时,无法在特定路径上创建excel文件。但是它是在使用visual 2008调试代码时创建的,甚至我也尝试过使用绝对路径和server.mappath()函数,但是在vain.Server中会抛出错误: HTTP 404。您正在寻找的资源(或其依赖项之一)可能已被删除、名称更改或暂时不可用。请检查以下URL并确保其拼写正确。请求网址: /Error.aspx

守则如下:

代码语言:javascript
运行
复制
private void CreateExcel(DataTable dt)
    {
        try
        {

        FilePath =  "\\\\192.168.1.252\\GNC Reports\\TallyExport.xls";
            Excel.Application oXL = new Excel.Application();

            //Get a new workbook.
            Excel._Workbook oWB = (Excel._Workbook)(oXL.Workbooks.Add(Type.Missing));

            // *************** Sheet 1
            Excel._Worksheet oSheet = (Excel._Worksheet)oWB.Sheets["Sheet1"];
            oSheet.Name = "Journal";
            WriteWxcel(oSheet, dt, 3);

            //***************** Sheet 2
            oSheet = (Excel._Worksheet)oWB.Sheets["Sheet2"];
            oSheet.Name = "Payroll";
            WriteWxcel(oSheet, dt, 4);

            // ************* Sheet 3
            oSheet = (Excel._Worksheet)oWB.Sheets["Sheet3"];
            oSheet.Name = "Receipt";
            WriteWxcel(oSheet, dt, 2);

            //Save Excel File
            oWB.SaveAs(FilePath, Excel.XlFileFormat.xlWorkbookNormal, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Excel.XlSaveAsAccessMode.xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
            oXL.Quit();

        }
        catch (Exception ex)
        {
            BussinessLayer.CMSException.Instance.HandleMe(this, ex);
        }

    }
EN

回答 1

Stack Overflow用户

发布于 2012-01-04 14:34:42

从类似服务器的场景中使用Office (IIS/ASP.NET/Windows服务.)不受MS的支持吗?参见http://support.microsoft.com/default.aspx?scid=kb;EN-US;q257757#kb2

另一点是,由于windows vista已经发生了一些与安全相关的更改,从而阻止了任何类似桌面的事情(例如打印、写入网络共享.)。从Windows服务..。

替代互操作:

在没有Interop的情况下,有许多读取/编辑/创建Excel文件的选项:

MS提供免费的OpenXML SDKV2.0-参见http://msdn.microsoft.com/en-us/library/bb448854%28office.14%29.aspx (仅限于XLSX)

这可以read+write MS办公文件(包括Excel)。

另一个免费选项参见http://www.codeproject.com/KB/office/OpenXML.aspx (仅限于XLSX)

如果您需要更多类似于处理较早的Excel版本(比如XLS,而不仅仅是XLSX)、呈现、创建PDF、公式等,那么就会有不同的免费和商业库,比如ClosedXML (免费的,仅限于XLSX )、EPPlus (免费的,仅限于XLSX )、Aspose.CellsSpreadsheetGearLibXLFlexcel等。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8728403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档