2016-12-25 103 views
-1

我創造在asp.net C#中的網頁,用戶輸入自己的信息,如僱員標識,名稱,skill_name,skill_category,skill_proficiency等使用Asp.Net創建一個Excel文件

當他們點擊「提交「按鈕,我想要在存儲所有數據的服務器上生成Excel文件(.xls)。隨着用戶繼續輸入數據,必須填寫Excel文件。

我知道在這裏使用數據庫是必須的,但我被告知要嚴格使用Excel文件,因爲項目的範圍很小。

任何起點幫助將不勝感激。

回答

0

對於這樣的項目,您需要開始考慮您可能需要的外部資源。我一讀到這個問題,就開始思考我在編程時的想法。 「好吧,我需要一個Excel文件庫或API導入到我的項目中,然後可以使用這些方法讀取/寫入Excel電子表格文件。」然後,你接下來開始你的搜索。我找你,我發現兩個選項,但也有可能是其他人在那裏:

  1. Excel Library
  2. Spreadsheet Light

的重要組成部分,在這裏沒有具體的庫,但你所想在正確的條件下。例如,我曾經用C#寫過一個應用程序,它寫了Microsoft Word .docx文件...... C#不能自己做這個,所以我搜索了「用C#編寫.docx文件」,最終找到並使用了一個庫稱爲DocX。

說了這麼多之後,一旦你得到這些庫中的一個,併成功地將它導入到你的項目中,你需要閱讀這些文檔並使用這些方法來玩,直到你熟悉如何創建,寫入,保存,並關閉一個文件。現在,您需要做的就是在您的ASP.NET應用程序中引用它,新建對象並將業務邏輯寫入適當的位置。您可以創建一個像repository pattern這樣的抽象,它實現您剛剛學習的Excel文件邏輯。回購模式會將您的業務邏輯/核心程序從庫中抽象出來,以便在不影響自己程序代碼的情況下用新的/不同的庫替換該庫。這應該讓你開始!

1

(無植入式廣告)

在我們的項目中,我們有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"); 

試試看。 購買圖書館(無論哪個)在大多數情況下比自己實施便宜得多。