当前位置:编程学习 > C#/ASP.NET >>

Winform Http上传文件失败,是不是文件太大?

有两个 txt 格式的文件:
1.txt           大小:8 bytes
2.txt           大小:25.6MB
两个文件都放在当前项目中的 Data 文件下
 
代码:
WebClient myWebClient = new WebClient();
//可以成功上传
myWebClient.UploadFile("http://localhost:64830/WebForm1.aspx","Post",@"H\Table_6.23\TABLE\App\Data\1.txt");   
//上传失败
myWebClient.UploadFile("http://localhost:64830/WebForm1.aspx","Post",@"H\Table_6.23\TABLE\App\Data\3.txt");
 
错误:远程服务器返回错误:(500)内部服务器错误
 
怎么解决? Winform Http 上传文件 --------------------编程问答-------------------- 顶顶顶 --------------------编程问答-------------------- 默认只能上传4M的文件,超过就被拒绝。
我最近在写支持浏览器直接上传文件的服务端,这才发现这个限制,而且那个传输方式很低效,是将数据封装好后,计算了长度再上传的,因此如果文件太大,会占用大量的内存。只有使用完全流模式传输才是最高效的,目前只有html5的websocket支持,或者安装浏览器插件,而你既然使用了WinForm,自然是支持的,为啥不用流模式传输呢?那个“WebClient.UploadFile”方法非常的低效啊。 --------------------编程问答--------------------
引用 2 楼 qldsrx 的回复:
默认只能上传4M的文件,超过就被拒绝。
我最近在写支持浏览器直接上传文件的服务端,这才发现这个限制,而且那个传输方式很低效,是将数据封装好后,计算了长度再上传的,因此如果文件太大,会占用大量的内存。只有使用完全流模式传输才是最高效的,目前只有html5的websocket支持,或者安装浏览器插件,而你既然使用了WinForm,自然是支持的,为啥不用流模式传输呢?那个“WebClient.UploadFile”方法非常的低效啊。


额..第一次上传这么大的,websocket 怎么做?可有案例?
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,