簡體   English   中英

從WPF DataGrid導出超過100,000行到Excel-C#Microsoft.Office Interop 14

[英]Export more than 100,000 rows from wpf datagrid to Excel - C# Microsoft.Office Interop 14

我有以下問題:在WPF應用程序中,我確實在datagrid中提供數據,並且用戶可以通過對象數組將網格的數據導出到Excel,如本SO線程中所述 好吧,只要要導出的行少於100,000,它就可以正常工作。 但是我不能導出超過100,000行。 然后,Excel將不會打開,但是我可以在任務管理器中看到一個Excel進程已經啟動,但是什么也不做,並為其分配了大約5 MB的內存。 但是,我的程序師並未阻止,並且沒有報告任何異常。 不管有多少列-限制似乎是100,000行。

可能相關的其他詳細信息:經過測試的環境:-Win 7 / XP / 8(32位)-Office 2010-Microsoft.Office.Interop 14-.NET 4.0客戶端配置文件

我為用戶提供了很多過濾器選項,因此他/她可以輕松地將數據包導出到excel文件並將它們放到一個大文件中-但由於Excel限制了軟件的使用范圍,因此有可能讓它完成此操作2010年大約有1,000,000行。

好吧,最終我無法找出為什么100,000行是通過Interop導出的限制。 我最終在Eric White描述的流方法中,借助Open XML Powertools使用了Open XML SDK。 完美適用於任何大小(性能為1,000行/秒),並且您不需要Interop。 只需使用以下行啟動創建的XLSX文件:

System.Diagnostics.Process.Start(completeFilename);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM