2011-12-15 33 views
0

我想將數據導出到excel文件(使用Response生成excel文件和提示下載)。 我有一個DataSet.I想要導出使用我自己的格式。就像添加一個標誌。改變一些colums背景顏色。製作一些粗體的行。從web應用程序導出爲ex​​cel文件

問題:

  1. 我嘗試使用XML電子表格,但我發現沒有辦法插入image.And還打開文件時出現警告信息(因爲它不是以二進制格式,而在XML格式)

  2. 我也試過excellibrary.But我不能使用任何單元格的背景顏色。我發現它是excellibrary尚未解決的問題。

那麼有沒有一種有效的方式可以導出數據(當然它應該是免費的)。

在此先感謝。

回答

0

您是否嘗試過使用的Microsoft Excel 12.0對象庫(編輯:將14現在實際上)

,因爲我用它,它已經有一段時間,但它是在Visual Studio(我認爲)和微軟標準用於處理Office文檔的庫。

+0

這是interop和不支持MS在ASP.NET中(雖然它有時「工程」) – Yahia 2011-12-15 07:27:39

+0

當然,它的互操作,MS Office不是建立在.NET (但無論如何)。但是你可以通過ASP.NET來訪問它,具體取決於你正在運行它的機器。如果您共享了託管服務,則最有可能無法使用。但是,如果你有一臺虛擬或專用的機器並在其上安裝辦公室,它將會如此。 – 2011-12-15 07:31:10

1

剛剛嘗試這一點。可能,這將幫助你:

System.IO.StringWriter oStringWriter = new System.IO.StringWriter(); 
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter); 
dg.RenderControl(oHtmlTextWriter); 
Response.Write(oStringWriter.ToString()); 
2

你可以達到你想要用不同的方法是什麼 - 例如通過HTML的導出...,瞭解有關HTML的方式與樣件生成Excel文件的一些深入的信息代碼中看到http://www.c-sharpcorner.com/UploadFile/kaushikborah28/79Nick08302007171404PM/79Nick.aspx

http://msdn.microsoft.com/en-us/library/Aa155477%28office.10%29.aspx

其他選項也籤正式文件創建Excel文件:

MS提供免費的OpenXML SDK 2.0版 - 看http://msdn.microsoft.com/en-us/library/bb448854%28office.14%29.aspx

這可以讀取+寫入MS Office文件(包括Excel)。

另一種自由選擇看http://www.codeproject.com/KB/office/OpenXML.aspx

如果您需要更多像渲染,公式等,再有像ClosedXML(免費),EPPlus(免費),Aspose.Cells(商業),SpreadsheetGear(商用不同的免費的商業庫),LibXL(商業)和Flexcel(商業)等