FineUI 官方论坛

标题: 分享一个上传进度条(写缓冲区)(需要在IIS上运行) [打印本页]

作者: cakey    时间: 2013-12-9 18:31
标题: 分享一个上传进度条(写缓冲区)(需要在IIS上运行)
本帖最后由 cakey 于 2014-4-22 20:18 编辑

       找了一段时间的.Net上传的进度条,基本上都是用flash的,一些大神写的代码我看不懂,个人是菜鸟码农,于是就搜了别人写的代码,然后研究研究,结合FineUI,做了下进度条。
原理:1 文件上传时触发上传代码,上传代码中把文件按字节写入缓冲区,并写下进度。
          2 另一个文件页面循环读取进度并展现在页面上。
遇到的问题:1 不知道为什么,始终无法在IHttpModule读取中Session,用了各种办法,最后只能用Cookies。

注:1 代码要架在IIS上看
       2 上传保存的文件夹注在根目录要有 Pic_Temp,当然可以修改成自己的
       3 上传文件的大小限制自己在web.config修改
       4 关于字典Dictionary 判断key存在的方法会根据不同版本.net不一样,dic.ContainsKey(name)或dic.Keys.Contains(name)
       5 请求的页面路径Response.Cookies["postPath"].Value = "/Default.aspx";可以活写Request.Path
       6 如果还有用不起来的同学就请自己多排查排查吧,研究是个很好玩的事情。

我还是把完整版的贴出来吧:下载地址 访问密码 8529(里面饱含extjs文件包,稍微大一些)

使用前提是架在IIS上,使用原理可以看这篇文章:http://www.cnblogs.com/Byrd/archive/2011/05/09/2040959.html原理:利用隐含的HttpWorkerRequest,用它的 GetPreloadedEntityBody 和 ReadEntityBody方法从IIS为ASP.NET建立的pipe里分块读取数据。

进度条就加入了一个滑动效果,没有做太多美化,不太在行,需要的可以自己修改一下。
个人代码水平不怎么样,大神勿喷,谢谢。

代码大家先看看吧,要加入FineUI项目哦
[attach]3884[/attach]








作者: 低调的360..    时间: 2013-12-9 22:12
不错 谢谢分享
作者: treedun    时间: 2013-12-10 10:28
相当棒,很实用的功能。
作者: 幻想    时间: 2013-12-10 12:03
发个完整的,可以运行的给我吧785452003@qq.com,我下载调用没反应啊。。。。。。。主要是我不会。。。
作者: cakey    时间: 2013-12-10 16:03
幻想 发表于 2013-12-10 12:03
发个完整的,可以运行的给我吧,我下载调用没反应啊。。。。。。。主要是我不会。。。 ...

完整的已经发给你了,需要放在服务器上才好看到效果
作者: 幻想    时间: 2013-12-11 11:00
嗯,谢谢了
作者: 蓝色海底    时间: 2013-12-11 16:12
本帖最后由 蓝色海底 于 2013-12-11 16:14 编辑

楼主给我也发一个完整版,调试半天没成功!谢谢了!23455870@qq.com!您辛苦了!
作者: Apollo    时间: 2013-12-11 17:02

楼主给我也发一个完整版,调试半天没成功!谢谢了!1580166@qq.com!您辛苦了!  

作者: cakey    时间: 2013-12-11 20:29
蓝色海底 发表于 2013-12-11 16:12
楼主给我也发一个完整版,调试半天没成功!谢谢了!23455870@qq.com!您辛苦了! ...

已发,再试试吧,.NET3.5
作者: cakey    时间: 2013-12-11 20:29
Apollo 发表于 2013-12-11 17:02
楼主给我也发一个完整版,调试半天没成功!谢谢了!!您辛苦了!

已发,再试试吧,.NET3.5
作者: 蓝色海底    时间: 2013-12-12 10:37
谢谢楼主了!
作者: kenday    时间: 2013-12-12 11:54
楼主给我也发一个完整版的吧!谢谢了!kenday183@163.com!谢谢了!
作者: 小兔乱闯    时间: 2013-12-12 12:14
楼主辛苦,发个完整的。1450561644@qq.com
作者: cakey    时间: 2013-12-12 17:57
小兔乱闯 发表于 2013-12-12 12:14
楼主辛苦,发个完整的。

下载地址已经贴出来了,辛苦下载一下
作者: cakey    时间: 2013-12-12 17:58
kenday 发表于 2013-12-12 11:54
楼主给我也发一个完整版的吧!谢谢了!!谢谢了!

地址已经贴出来了,辛苦自己下载一下吧
作者: Min    时间: 2013-12-26 09:18
做个记号!!!!!!!!!!!!
作者: Apollo    时间: 2013-12-26 14:56
cakey 发表于 2013-12-11 20:29
已发,再试试吧,.NET3.5

没收到啊,老大,能重新发一遍吗,  1580166@qq.com
作者: treedun    时间: 2014-1-2 15:58
[attach]4087[/attach]
杯具啊,能发个完整版的吗?谢谢了 treedun@qq.com

作者: cakey    时间: 2014-1-5 14:12
Apollo 发表于 2013-12-26 14:56
没收到啊,老大,能重新发一遍吗,

代码贴在首页上,有地址
作者: cakey    时间: 2014-1-5 14:13
treedun 发表于 2014-1-2 15:58
杯具啊,能发个完整版的吗?谢谢了

你要放在iis上看才可以的,是利用IIS利用隐含的HttpWorkerRequest,用它的 GetPreloadedEntityBody 和 ReadEntityBody方法从IIS为ASP.NET建立的pipe里分块读取数据。
作者: kaibestserver    时间: 2014-1-16 15:21
QQ:472359284  希望楼主发一个完整版 谢谢
作者: cakey    时间: 2014-1-17 10:56
kaibestserver 发表于 2014-1-16 15:21
QQ:472359284  希望楼主发一个完整版 谢谢

地址已经发出来了
作者: kaibestserver    时间: 2014-1-17 16:24
经过测试 不能运行
作者: 最初的理想    时间: 2014-1-18 12:00
求分享完整版 305303646@qq.com
作者: cakey    时间: 2014-1-20 09:29
kaibestserver 发表于 2014-1-17 16:24
经过测试 不能运行

在IIS上运行了吗?我这边一直都没问题
作者: kaibestserver    时间: 2014-1-25 13:55
cakey 发表于 2014-1-20 09:29
在IIS上运行了吗?我这边一直都没问题

是!可能是我没有配置好IIS。
作者: zyllwj2012    时间: 2014-4-18 11:03
楼主给我也发一个完整版,调试半天没成功!谢谢了!383455343@qq.com!您辛苦了!  

作者: zyllwj2012    时间: 2014-4-18 11:04
完整版,下载不下来,需要360云盘密码
作者: dssd    时间: 2014-4-25 10:38
不错.可以用.win8下也正常!




欢迎光临 FineUI 官方论坛 (https://www.fineui.com/BBS/) Powered by Discuz! X3.4