【问题标题】:Generating an Excel File Example for Visual Studio 2010 and ASP.net and C#为 Visual Studio 2010 和 ASP.net 和 C# 生成 Excel 文件示例
【发布时间】:2013-03-24 02:03:55
【问题描述】:

我遇到过ExcelPackage 并找到了几个使用它的示例,但似乎都没有用,它们都有某些方面、缺少组件或适用于不同版本的 Visual Studio。我只需要生成.xls.xlsx 甚至.csv 文件,但由于我使用的是第3 方服务器,因此我无法使用Office .com 对象。我过去用过SpreadsheetGear,它很贵,而且我退休了,我买不起这种产品。

如果有人有 ExcelPackage 或任何其他免费软件产品的工作示例,或者可以指出我需要的一切,我将不胜感激。首选常规 Web 应用程序而不是 MVC。

【问题讨论】:

  • 您不想使用 COM 对象。它们要么根本不起作用,要么不稳定,在服务器中不受支持,并且可能违反您的 Office 许可证。
  • CSV 只是纯文本 - 你可以在没有任何组件的情况下做到这一点......

标签: c# asp.net excel


【解决方案1】:

看看Simplexcel by Michael Stum。它是围绕简单而设计的,在 ASP.net 下得到完全支持,应该允许您制作简单但非常有用的 Excel 秘籍。你有一个简单的例子here

【讨论】:

  • 这看起来可以完成这项工作,但我是这种事情的新手,它正在尝试保存到服务器。如何获取服务器上生成的文件以保存到本地 PC?我浏览了网络,我只能找到保存现有文件的示例,而不是动态生成的文件。
  • 这有点超出了您原始问题的范围。我建议为 taht 打开一个新问题,但你可能会做这样的事情。 MemoryStream stream = new MemoryStream(); wb.Save(stream, CompressionLevel.Maximum); return new FileStreamResult(stream, "application/vnd.ms-excel"); 基本上将结果存储在内存中,然后在 ASP.net 中使用FileStreamResult 返回。
  • 好的,谢谢 eanderason。我会这样做的。我没有使用 MVC,而 FileStreamResult 是一个 MVC 组件,所以需要一些用于 webforms 的东西。我怀疑它会使用 HTTP 处理程序。
  • 你可以对 WinForms 做同样的事情。将它们作为电子邮件发送是一种选择吗?
  • 我不能使用 winforms,但电子邮件不是首选选项。我无法将文件存储在服务器上。
【解决方案2】:

查看Open XML SDK。这使您能够generate 和操作 Office 文档,而无需使用 Office 本身或互操作,因此使其成为服务器端的合适方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-07
    • 2012-01-05
    • 2012-05-30
    • 2011-05-02
    • 1970-01-01
    • 2011-06-30
    • 1970-01-01
    相关资源
    最近更新 更多