2

我正在寻找评论、替代解决方案和建议。

背景:我们目前有一个使用 struts 框架在 Websphere 上构建的 CRUD 应用程序。我们使用独立的 C# 应用程序生成 excel 文档,该应用程序使用 ActiveX 控件与 Web 应用程序绑定在一起。我们传递包含每个文档元素的 XML。在每个文档下,我们都有包含名称和值的占位符。文档生成应用程序从文件服务器获取名称(单元格引用或命名范围)和模板副本。然后它将数据添加到文档中的所有指定位置,并将文档保存到用户的“我的文档”文件夹中。然后它会尝试将文档上载到 Documentum。

当前问题:其中一个模板已经增长到非常大的尺寸。在大多数情况下,这是因为需要显示的数据量。我们将信息分成几组。这些分组中的每一个都需要能够显示最多 20 件的信息。其中一些选项卡还需要为片段显示多达 100 个子元素。由于自制文档生成框架的当前性质,不可能动态生成具有可变数量元素的不同部分。这最近开始导致模板的维护出现问题。如果我们需要进行格式更改,它不仅需要复制到每个选项卡,还可能复制到每个选项卡中的每个实例。

我开始研究 jXLS 和它的模板功能,但由于它是基于 java 的,因此将它与 c# 应用程序集成会很麻烦。其他选择是将类似 jXLS 的功能构建到我们的生成框架中,将第三方库集成到框架中,或者在应用程序服务器上生成文档。我宁愿避免重新发明轮子,并且想从某个地方重新使用一个库。

我也希望尽可能不影响现有的工作流程。所以现在首选的解决方案顺序看起来像这样。

1) 使用 .NET 的现有库
2) 从 DocumentGeneration 框架调用 jXLS 库。
3) 在生成框架中构建模板功能
4) 在应用服务器上使用 jXLS(由于我们将流程上传到 Documentum 的方式)

你对此有什么建议?

4

2 回答 2

2

我不确定这对你有多大帮助,但我过去曾使用NPOI来生成 XLS 文档,而且它很容易使用。NPOI 是 Java POI 的 .NET 端口,POI 由 jXLS 内部使用。

我不确定它的功能是否符合您的要求,或者至少是一个起点。

于 2010-09-09T15:37:15.803 回答
0

我已经使用了 Syncfusion 的 XLSIO组件来按照 JXLS 的方式进行 excel 模板。它是 .net 并且运行良好,但它是一种商业产品,如果项目中有很多开发人员,许可就会变得昂贵。

如果您发现 JXLS 的开源端口,请分享!

于 2015-07-27T19:23:10.637 回答