Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# OpenXml、隔离存储和大文件大小_C#_Asp.net_Excel_Openxml Sdk - Fatal编程技术网

C# OpenXml、隔离存储和大文件大小

C# OpenXml、隔离存储和大文件大小,c#,asp.net,excel,openxml-sdk,C#,Asp.net,Excel,Openxml Sdk,我正在使用OpenXML在web应用程序中生成Excel文档。对于小于10mb的文件,它工作得非常好 对于大小大于10mb的文件,我得到以下异常 虽然我在网上讨论了这个问题(有些是关于使用其他打包库的),但我还没有解决我们的问题。其他人看到并解决了这个问题 我真的很喜欢使用OpenXml的想法(但是我讨厌仅仅因为这个问题而转移到另一个解决方案) 解决方案 System.IO.IsolatedStorage.IsolatedStorageException:无法创建存储目录。(来自HRESULT的

我正在使用OpenXML在web应用程序中生成Excel文档。对于小于10mb的文件,它工作得非常好

对于大小大于10mb的文件,我得到以下异常

虽然我在网上讨论了这个问题(有些是关于使用其他打包库的),但我还没有解决我们的问题。其他人看到并解决了这个问题

我真的很喜欢使用OpenXml的想法(但是我讨厌仅仅因为这个问题而转移到另一个解决方案)

解决方案

System.IO.IsolatedStorage.IsolatedStorageException:无法创建存储目录。(来自HRESULT的异常:0x80131468) 在System.IO.IsolatedStorage.IsolatedStorageFile.GetRootDir(IsolatedStorageScope作用域,StringHandleOnStack RetrotDir) 位于System.IO.IsolatedStorage.IsolatedStorageFile.InitGlobalsNonRoamingUser(IsolatedStorageScope作用域) 位于System.IO.IsolatedStorage.IsolatedStorageFile.GetRootDir(IsolatedStorageScope作用域) 在System.IO.IsolatedStorage.IsolatedStorageFile.GetGlobalFileIOPerm(IsolatedStorageScope范围)中 在System.IO.IsolatedStorage.IsolatedStorageFile.Init(IsolatedStorageScope作用域)中 在System.IO.IsolatedStorage.IsolatedStorageFile.GetStore(IsolatedStorageScope作用域,类型domainEvidenceType,类型assemblyEvidenceType) 位于MS.Internal.IO.Packaging.PackagingUtilities.ReliableIsolatedStorageFileFolder.GetCurrentStore()


我正在使用此
WordprocessingDocument包=WordprocessingDocument.Open(inputFileName,true)
我能够处理超过30mb的文件

我认为您正在使用MemoryStream来处理它

参考这个


希望这有帮助

我在生成包含75列和130000行的Excel文件时遇到问题。我正在从网络服务器返回它们。我尝试使用Openxml,一开始非常灵活,但如果问题没有得到解决,它似乎有很多问题。我只需要在一张纸上放8000行就可以让它工作,并且在打开时使用宏来组合这些纸,这导致了另一组问题。我为此挣扎了几个月,似乎很多人都有这个问题

由于新的excel文件只是一堆压缩的xml文件,我不明白为什么没有人解压缩这些文件,并用自己填充的数据和压缩备份替换工作表。我已经筋疲力尽了,所以决定尝试一下,我查阅了.Net压缩并编写了大型xml文件。在2小时内,我从数据库中填充了我的第一个工作测试

我正在生成包含75列和130,00行的excel文件,1分钟用于查询数据,3 1/2分钟用于生成报告。当我使用Openxml时,这些将花费7-8分钟,并且会耗尽所有的内存。我真的必须调整应用程序池以使其保持运行。

检查此链接

刚刚通过我的同事了解了这个修复方法-希望与大家分享。 我们终于解决了这个长期存在的问题,即使用OpenXMLSDK(或System.IO.Packaging)的应用程序在处理大文件时会挂起在多线程场景中。(10MB限制相关错误)

Windows 8.1和Windows Server 2012 R2上.NET Framework 4.5、4.5.1和4.5.2的修补程序汇总2996566 support.microsoft.com/kb/2996566 Windows 8和Windows Server 2012上.NET Framework 4.5、4.5.1和4.5.2的修补程序汇总2996567 support.microsoft.com/kb/2996567 Vista SP2、Windows Server 2008 SP2、Windows 7 SP1和Windows Server 2008 R2 SP1上.NET Framework 4.5、4.5.1和4.5.2的修补程序汇总2996568
support.microsoft.com/kb/2996568

是否通过web应用程序执行此操作?(iis和asp.net)不,我正在Winforms应用程序中使用它。这是我的想法,感谢您的输入,但我的场景与web应用程序/iis有关。您能否确切地告诉我们您使用了哪些库/函数/进程来实现这一点?更多的细节将是有用的。