怎样才能上传大到几百兆的附件?
解决方案 »
- C#如何创建一个命名事件
- vs2008 asp.net 如何得到当前页面的路径+文件名
- 一个我很纠结的问题,兄弟们来看卡
- 关于datagrid和gridview,急急急!!!
- ASP.NET 拥有ItemTemplate的控件。例如DataList,
- webpart开发怎么实现把页面位置信息写入oracle数据库
- 求助:关于实现数据接口的问题,需要注意那些条件。
- 提高asp.net(c#)代码输入速度
- 页面内用多个 textbox 和校验validator,对 button1,如何能让它被点击时,只对 textbox1的 validator起作用?
- 当前论坛上的普通会员和高级会员是怎样管理的(原理)
- 求关于性能的问题,欢迎探讨,送分~~~~~~~~~~
- 一个很简单的问题
<httpRuntime executionTimeout="100" maxRequestLength="409600" useFullyQualifiedRedirectUrl="false" minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100" enableVersionHeader="true"/>//****也可以在machine.config中配置相关属性
利用隐含的HttpWorkerRequest,用它的GetPreloadedEntityBody和ReadEntityBody方法从IIS为ASP.NET建立的pipe里分块读取数据。实现方法如下:IServiceProvider provider=(IServiceProvider)HttpContext.Current;
HttpWorkerRequest wr=(HttpWorkerRequest)provider.GetService(typeof(HttpWorkerRequest));
byte[]bs=wr.GetPreloadedEntityBody();
if(!wr.IsEntireEntityBodyIsPreloaded())
{
intn=1024;
byte[]bs2=newbyte[n];
while(wr.ReadEntityBody(bs2,n)>0)
{
..
}
}
Client.DownloadFile(路径,文件名);
client.DownloadFile(URLAddress,fileName);
Stream str = client.OpenRead(URLAddress);
StreamReader reader = new StreamReader(str);
byte[] mbyte = new byte[100000];
int allmybyte = (int)mbyte.Length;
int startmbyte = 0;
statusBar.Text = "正在接收数据...";
while(allmybyte>0)
{
int m = str.Read(mbyte,startmbyte,allmybyte);
if(m==0)
break;startmbyte+=m;
allmybyte-=m;
} 完成了文件数据的读取工作后,我们运用FileStream类的实例对象将这些数据写入本地文件中:FileStream fstr = new FileStream(Path,FileMode.OpenOrCreate,FileAccess.Write);
fstr.Write(mbyte,0,startmbyte);