mvc的更改文件上传响应时间

在mvc项目的开发过程中会涉及到关于文件上传的事件,在文件上传的过程中,我们要注意一些易错点。

  1. 上传的文件的方式要用post方式去提交,如果用get方法去提交,数据会放在url中,然后url的长度是有限制的,那么我们提交的数据大小也会因此所受到限制,所以我们一般提交文件都用post方式提交。
  2. 页面文件数据完整性保证之后,我们就要确保控制器能接收到文件数据,要接收文件,就要有声明接收数据的字段,在下面的控制器方法中,我用HttpPostedFileBase 这个类型来接收文件数据,如下图

我创建一个file是HttpPostedFileBase 的类型的字段来接收来自页面的文件。并且我断了个点来测试数据是否传到了控制器。

 

  1. Html布局是一个form表单里面有一个name是file的input标签,然后一个用于触发事件的按钮,这里我用jqury的form插件来提交的文件,提交路径要写在要提交form的action属性中。如下图:

 

4.打开页面是这样的,一个文件选择框和一个按钮。如图所示:

5.现在我尝试提交一下文件,一个2.85兆的文件

 

页面上提交效果,如下图

当我选择文件然后点击提交,就会跳到控制器,并且可以看到文件提交过来了

提交过来的文件大小是2994168字节==2.85MB,等于上面文件属性的大小,一次成功了,是不是就代表所以文件都可以提交得过来呢?让我们继续测试。让我们上传比这个文件大一点的文件,如下图(在下一页)

 

 

 

 

 

 

 

现在来一个大一点的文件提交,看看还能不能提交过去

文件大小4.17MB的文件,页面提交之前的效果

当我点击提交按钮是,控制台会显示错误,如图所示

页面会提示500错误,那么报错的原因是上面,我们可以确定控制器接收的字段没有问题,那么问题是出现在提交的文件大小中,mvc项目的web配置文件中,限制文件上传的大小是大于4mb的文件不会接收,然而,我们就想要上传这么大的文件,就要去改一下web.config这个文件。如下图

我们要改动这个文件里面的system.web标签里面的httpRuntime 这个标签,这是未改动版的配置,现在我们要修改上传文件的最大大小,如下图

还是这个文件,我们要在httpRuntime 这个标签里加上maxRequestLength 这个属性并且设置它的值,默认值是4096KB,是以KB算的,不是字节bit,也就是4M,现在我想把它设置不能大于40M,也就是40960KB。保存,再让我们再次上传这个大于4MB的歌曲文件。

 

页面上的图片就不放了,当我们修改文件上限大小是40m的时候,这个4.17的文件能提交过来了,如图所示

现在再让我们试一下20mb的文件提交

(请翻页)

下图是20几兆的文件

成功提交到控制器,如同所示

那么我们学会了,如何在mvc项目中,修改文件上传最大大小。

 

如果这篇文章对您有所帮助,可以考虑转发一下,或者评论一下,留下你宝贵的建议。

感谢你的阅读,你能阅读这篇文章,是作者最大的动力。

猜你喜欢

转载自blog.csdn.net/qq_44540112/article/details/89954851