首页 新闻 搜索 专区 学院

C#文件分块上传,异步上传问题

0
悬赏园豆:50 [已解决问题] 解决于 2012-08-31 13:23

我想用Winform做一个文件分段上传,本地是Winform服务器是IIS中部署一个ASP.NET当做服务器,文件传输用HTTP协议,比如 byte[] filebyte=new byte[1024];

然后去本地读取文件每次读取 1024个字节,上传到服务器,写入服务器磁盘或者数据库。

循环读取上传保存直到本地的这个文件完全上传完,该如何做啊,用异步又改如何做,麻烦各位朋友指点指点。給个Demo或者说说具体实现的思路 。

问题补充:

这个问题我确实是不懂,之前一直忙碌于数据库和vsto,对web开发不大懂,希望各位牛人,老师们指点指点,我现在想知道服务器那边接收到客户端发送的分段文件流是怎么处理的,如何标识是某个文件的一部分,又如何判断文件是否全部存盘完毕等等这一系列问题。分数不够可以加我的分数可以都给你,只要给我讲明白,让我找到解决方案。谢谢大家了。

E1ement的主页 E1ement | 初学一级 | 园豆:59
提问于:2012-08-29 19:37
< >
分享
最佳答案
0

你说的异步是指不阻塞winform界面还是指Http文件上传的异步?

前者可以用BackGroundWorker,后者貌似不支持。

如果文件不大,web就直接file.SaveAs()了,每次读取 1024个字节上传跟保存没关系。

如果要循环保存就只能自己写HttpModule,从HttpWorker中的InputStream解析文件内容保存。

收获园豆:25
向往-SONG | 老鸟四级 |园豆:4853 | 2012-08-30 11:19

谢谢你,我说的异步是异步上传,不是堵塞窗体。

如果文件不大,web就直接file.SaveAs()了,每次读取 1024个字节上传跟保存没关系。

如果要循环保存就只能自己写HttpModule,从HttpWorker中的InputStream解析文件内容保存。

可以在详细点说说这两句吗?

E1ement | 园豆:59 (初学一级) | 2012-08-30 11:23
其他回答(3)
0

本地用Winform上传话,用ftp应该更方便吧

收获园豆:25
慧☆星 | 园豆:5545 (大侠五级) | 2012-08-30 10:56

谢谢你的帮助,我这个是做的整个项目的一个模块儿,大项目那边使用的HTTP协议,我只能用HTTP协议了。

支持(0) 反对(0) E1ement | 园豆:59 (初学一级) | 2012-08-30 11:03
0

问题已经解决了,功夫不负有心人,看了三四帖子,终于找到个解决办法。哎...可能问题问的太菜了,只有两个围观的,分数给你两平分了吧。

E1ement | 园豆:59 (初学一级) | 2012-08-31 13:22
0

您好,看到了你的大附件上传,我也在做,请问你有源码么 可以给我一个么?

Capo | 园豆:202 (菜鸟二级) | 2012-10-18 14:34

你要上传多大的?

支持(0) 反对(0) E1ement | 园豆:59 (初学一级) | 2012-10-18 16:04

@E1ement:  大于 1 G 的 小于 2G 的,能否共享下源码

支持(0) 反对(0) Capo | 园豆:202 (菜鸟二级) | 2012-10-18 16:05

@Capo: http://blog.csdn.net/shihuan10430049/article/details/3734398 我是看了这位牛人的文章解决的。你也看看吧。

支持(0) 反对(0) E1ement | 园豆:59 (初学一级) | 2012-10-18 16:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册