【问题标题】:Upload a large Excel file and process asynchronously上传大型 Excel 文件并异步处理
【发布时间】:2012-06-26 17:30:19
【问题描述】:

我想上传一个大的跟踪号文件并将它们处理到我们的订购系统中。

我以前用过

 Server.ScriptTimeout = 3000

在我们升级服务器之前它一直有效,现在它崩溃了。

我来了

 This webpage is not available
 The connection to www.YourSite.com was interrupted.

我可以看到 .csv 文件已上传,但许多跟踪号没有得到处理。

我正在考虑切换到异步更新。但我找不到任何好的来源。

如果你有什么好的想法,请告诉我。 谢谢

【问题讨论】:

    标签: asp.net vb.net excel asynchronous


    【解决方案1】:

    文件有多大??这可能是因为 machine.config 中的文件大小限制。尝试将此添加到您的 web.config 中

    <location path="Upload">
        <system.web>
            <httpRuntime executionTimeout="3000" maxRequestLength="20000" />
        </system.web>
    </location>
    

    另外,我不建议更改 machine.config 中的值。最好为大型上传设置一个条目,而不是为大型上传打开每个页面以帮助减少 DOS 攻击。

    要异步处理文件,请查看使用 BackgroundWorker。

    http://gugiaji.wordpress.com/2012/02/29/backgroundworker-intro-part-1-work-with-progressbar/

    【讨论】:

    • 谢谢克里斯。看起来我们在服务器上有一个更大的问题,它在某些时候崩溃了。我在本地有该站点的副本,它可以工作,但在服务器上它崩溃了。我从哪里开始?
    • 我将开始查看 IIS 日志和系统日志。那里应该有一些东西表明失败了。之后,尝试插入一些输出到本地文件的调试代码。
    • 这是一个新问题,如果你能帮忙请告诉我。stackoverflow.com/questions/11213343/…
    猜你喜欢
    • 2012-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-25
    • 1970-01-01
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多