使用Asp.Net创建一个Excel文件

问题描述:

我创造在asp.net C#中的网页,用户输入自己的信息,如雇员标识,名称,skill_name,skill_category,skill_proficiency等使用Asp.Net创建一个Excel文件

当他们点击“提交“按钮,我想要在存储所有数据的服务器上生成Excel文件(.xls)。随着用户继续输入数据,必须填写Excel文件。

我知道在这里使用数据库是必须的,但我被告知要严格使用Excel文件,因为项目的范围很小。

任何起点帮助将不胜感激。

对于这样的项目,您需要开始考虑您可能需要的外部资源。我一读到这个问题,就开始思考我在编程时的想法。 “好吧,我需要一个Excel文件库或API导入到我的项目中,然后可以使用这些方法读取/写入Excel电子表格文件。”然后,你接下来开始你的搜索。我找你,我发现两个选项,但也有可能是其他人在那里:

  1. Excel Library
  2. Spreadsheet Light

的重要组成部分,在这里没有具体的库,但你所想在正确的条件下。例如,我曾经用C#写过一个应用程序,它写了Microsoft Word .docx文件...... C#不能自己做这个,所以我搜索了“用C#编写.docx文件”,最终找到并使用了一个库称为DocX。

说了这么多之后,一旦你得到这些库中的一个,并成功地将它导入到你的项目中,你需要阅读这些文档并使用这些方法来玩,直到你熟悉如何创建,写入,保存,并关闭一个文件。现在,您需要做的就是在您的ASP.NET应用程序中引用它,新建对象并将业务逻辑写入适当的位置。您可以创建一个像repository pattern这样的抽象,它实现您刚刚学习的Excel文件逻辑。回购模式会将您的业务逻辑/核心程序从库中抽象出来,以便在不影响自己程序代码的情况下用新的/不同的库替换该库。这应该让你开始!

(无植入式广告)

在我们的项目中,我们有simular要求我们使用第三方工具,如Aspose.Cells。我在大约7个项目中使用过它,我非常喜欢它。

与您的日薪相比,大约1000美元的成本相对便宜。 (当然还有30天过试用版)

Aspose.Cells Pricing

在你的情况我建议做以下步骤:

  1. 创建一个网站,用户可以将他们的数据
  2. 存储这些数据在数据库
  3. 实现一个Excel导出功能

导出(使用Aspose。细胞记忆)相对简单:

// Load template XLSX 
Workbook workbook = new Workbook(@"C:\temp\YourTemplate.xlsx"); 

// get the first worksheet 
Worksheet worksheet = workbook.Worksheets[0]; 

// some logic to dump your data from database to the worksheet 
ExportDataFromDbToWorksheet(worksheet); 

//Saving the Excel file 
workbook.Save(@"C:\temp\Export.xlsx"); 

试试看。 购买图书馆(无论哪个)在大多数情况下比自己实施便宜得多。