ASP.net 上传巨大文件
看了思归的文章,
利用隐含的HttpWorkerRequest用它的GetPreloadedEntityBody 和 ReadEntityBody方法处理文件流
IServiceProvider provider = (IServiceProvider) HttpContext.Current;
HttpWorkerRequest wr = (HttpWorkerRequest) provider.GetService(typeof(HttpWorkerRequest));
byte[] bs = wr.GetPreloadedEntityBody();
....
if (!wr.IsEntireEntityBodyIsPreloaded())
{
int n = 1024;
byte[] bs2 = new byte;
while (wr.ReadEntityBody(bs2,n) >0)
{
.....
}
}
上面的代码一直不能完成。
1. wr.GetPreloadedEntityBody();有时返回是null,有时是7K的byte数组,怎么回事?
2. wr.ReadEntityBody(bs2,n) 为什么老返回0?
aspx的页面也相应的设置了 :
<form id="form1" runat="server" enctype="multipart/form-data" method="post" >
<input type="file" id="myFile" runat="server" style="width: 262px" />
为啥就不行呢?
给200分
问题点数:100、回复次数:9Top
1 楼perilla(紫苏)回复于 2006-03-20 14:14:51 得分 1
http://blog.joycode.com/saucer/archive/2004/03/16/16225.aspxTop
2 楼mostice(沉默的羔羊)回复于 2006-03-20 14:25:12 得分 1
学习一下。Top
3 楼riding(ride)回复于 2006-03-20 15:20:40 得分 0
to perilla(紫苏): 那个网页我都阅读n遍了。就按那里做的,出问题了,不能解决。Top
4 楼riding(ride)回复于 2006-03-20 15:31:49 得分 0
这里还有100分:http://community.csdn.net/Expert/topic/4626/4626267.xml?temp=.451687Top
5 楼chenyu112(晨雨)回复于 2006-03-20 15:51:15 得分 1
学习Top
6 楼riding(ride)回复于 2006-03-20 18:12:29 得分 0
upTop
7 楼zhurenweile(助人为乐)回复于 2006-04-05 12:07:37 得分 96
学习Top
8 楼stormlly()回复于 2006-04-05 12:27:40 得分 1
想知道Top
9 楼riding(ride)回复于 2006-04-05 12:46:13 得分 0
郁闷,结帖了。原来这段程序在httpModule内起作用。至于. wr.GetPreloadedEntityBody();有时返回是null,有时是7K的byte数组还是没搞明白Top




