如图:Upload File按钮的事件如下:
protected void btnUpload_Click(object sender, EventArgs e)
...{
bool fileOK = false;
string path = Server.MapPath("~/Temp/");
if (this.uploadFile.HasFile)
...{
string fileException = System.IO.Path.GetExtension(uploadFile.FileName).ToLower();
string[] allowedException =...{ ".gif", ".bmp", ".png", ".jpg" };
for (int i = 0; i < allowedException.Length; i++)
...{
if(fileException==allowedException[i])
fileOK=true;
}
}
if(fileOK)
...{
try
...{
this.uploadFile.SaveAs(path+uploadFile.FileName);
this.labState.Text="The File upload Sucess!";
this.labDetial.Text="<b>The file Original path:</b>"+this.uploadFile.PostedFile.FileName+"<br/><b>The file size:</b>"+this.uploadFile.PostedFile.ContentLength+"字节<br/><b>The File Type:</b>"+this.uploadFile.PostedFile.ContentType+"<br/>";
}
catch(Exception ee)
...{
this.labState.Text="The file upload Default";
}
}
else
...{
this.labState.Text="Please upload picture file only";
}
}
...{
bool fileOK = false;
string path = Server.MapPath("~/Temp/");
if (this.uploadFile.HasFile)
...{
string fileException = System.IO.Path.GetExtension(uploadFile.FileName).ToLower();
string[] allowedException =...{ ".gif", ".bmp", ".png", ".jpg" };
for (int i = 0; i < allowedException.Length; i++)
...{
if(fileException==allowedException[i])
fileOK=true;
}
}
if(fileOK)
...{
try
...{
this.uploadFile.SaveAs(path+uploadFile.FileName);
this.labState.Text="The File upload Sucess!";
this.labDetial.Text="<b>The file Original path:</b>"+this.uploadFile.PostedFile.FileName+"<br/><b>The file size:</b>"+this.uploadFile.PostedFile.ContentLength+"字节<br/><b>The File Type:</b>"+this.uploadFile.PostedFile.ContentType+"<br/>";
}
catch(Exception ee)
...{
this.labState.Text="The file upload Default";
}
}
else
...{
this.labState.Text="Please upload picture file only";
}
}
默认情况下,FileUpload控件上传大小为4096kb,这是用Web.config文件的<httpRuntime>配置节中的maxRequestLength属性来设置,如果需要上传大于4096kb的文件,则需要修改这这一配置.
文件上传大小不能超过内存大小的60%.这里的60%也是web.config文件的默认配置,<procesModel>配置中的memoryLimit属性的默认值.虽然可以修改,但是这给服务器带来的负担可想而知.建议不要修改此值.