我有一個想打開單獨的Excel程序的每個會話的應用(網絡)。當我嘗試這個時,服務器只打開了20個進程,這是一個限制還是他們打開超過20個Excel.exe進程的一種方式。多少Excel的過程中,我可以調用使用C#
謝謝
我有一個想打開單獨的Excel程序的每個會話的應用(網絡)。當我嘗試這個時,服務器只打開了20個進程,這是一個限制還是他們打開超過20個Excel.exe進程的一種方式。多少Excel的過程中,我可以調用使用C#
謝謝
我認爲這取決於您的系統資源。
但是我可以從個人的經驗告訴你,Excel的互操作是不推薦的解決方案,以Web應用程序如C#ASP.NET。看到這裏甚至:https://support.microsoft.com/kb/257757?wa=wsignin1.0
否則爲什麼?:
的Excel互操作使用大量的系統資源和Web應用程序將很快遇到許多性能問題。
的Excel互操作,必須在服務器上安裝,也有與進程標識問題。對於32位和64位系統,安裝和配置有時很難並且不同。
有時是因爲,上帝知道,原因Excel的互操作進程不會立即關閉(不只是如果一些互操作性資源未發行)。那麼你將不得不自己關閉這些過程,這是一個真正的痛苦。
爲什麼不使用OpenXML或更好的ClosedXML?你會看到你的代碼的Excel文件,甚至100倍的運行速度更快的的OpenXML/ClosedXML把Excel文件的XML文件,並不會爲中介業務附加過程。
CloseXML鏈接:https://closedxml.codeplex.com/
非常感謝您的回答。我正在通過網絡使Excel文件交互。所以我的計算髮生在Excel中。我已經定義了一種關閉excel的方法,它的工作很好,問題是我只能運行20個併發會話。 – user3823979 2014-10-17 10:33:26
好的,理解。你在制定企業解決方案嗎?也許你可以通過SharePoint託管它(MS SharePoint具有這些功能)?我唯一能想到的另一種選擇是讓查詢隊列 - 你必須管理接收到執行您的Excel的計算,使他們不超過20個測試過程中的查詢量。 – 2014-10-17 10:37:21
非常感謝,正如你提到的隊列將是最好的。非常感謝您的快速響應。不確定是否有微軟的限制,以便檢查它。 – user3823979 2014-10-17 10:53:04