加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – ERR_CONNECTION_RESET:上传大文件时重置了连接

发布时间:2020-12-16 04:36:14 所属栏目:asp.Net 来源:网络整理
导读:我有一个神秘的错误,一个大于4MB的文件产生一个随机错误.后来我意识到这是由于 http maxrequestlength 引起的 .默认情况下上传时,图片不能超过4MB. 我知道这可以从web.config文件更改. 当我尝试通过显示另一个页面来尝试解决此错误时,会弹出一个不同的错误.
我有一个神秘的错误,一个大于4MB的文件产生一个随机错误.后来我意识到这是由于 http maxrequestlength引起的
.默认情况下上传时,图片不能超过4MB.

我知道这可以从web.config文件更改.

当我尝试通过显示另一个页面来尝试解决此错误时,会弹出一个不同的错误.调试时,程序立即进入application_error.

执行Server.GetLastError()时生成异常:

[System.Web.HttpUnhandledException] {“Exception of type
‘System.Web.HttpUnhandledException’ was
thrown.”} System.Web.HttpUnhandledException

the stack trace: at System.Web.UI.Page.HandleError(Exception e) at
System.Web.UI.Page.ProcessRequestMain(Boolean
includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean
includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest() at
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) at
System.Web.UI.Page.ProcessRequest(HttpContext context) at
ASP.businessprofile_aspx.ProcessRequest(HttpContext context) in
c:UsersMattewAppDataLocalTempTemporary ASP.NET
Filesroot4ea300778f66786fApp_Web_h5fmhavk.4.cs:line 0 at
System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step,
Boolean& completedSynchronously)

如果我在application_error方法中尝试任何代码,例如重定向,仍然是错误页面:
错误101(net :: ERR_CONNECTION_RESET):连接已重置.
被展示.

问题

>如何处理此错误?可以事先处理吗?那么这个错误没有显示出来? (我尝试使用jquery来获取文件大小并检查它,但我发现它太复杂了
>如果问题1不是’回答’,是否有办法拦截此错误并显示友好错误?

解决方法

试试吧.

在web.config中的系统Web下

添加此行..

<system.web>
<httpRuntime executionTimeout="999" maxRequestLength="2097151"/>

然后你需要检查文件大小

if (AsyncFileUpload1.HasFile)
        {
            string FileName = Path.GetFileName(AsyncFileUpload1.PostedFile.FileName);
            string Extension = Path.GetExtension(AsyncFileUpload1.PostedFile.FileName);
            string FolderPath = ConfigurationManager.AppSettings["FolderPath"];
            string FilePath = Server.MapPath("~/xl/" + FileName);
            double filesize = (double)AsyncFileUpload1.FileBytes.Length;
            if (filesize < 106496)
            {
               //do something
            }
            else
            {
                Response.Write("File size must be less than 2MB.");
            }

如果您发现它有用,请将其标记为您的答案,否则请告诉我.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读