← Tutti gli articoli
File Upload. Limit the Size of an uploaded file with a Custom Validator
18 October 2010 ·
Asp.Net · Article ·
244 visite
File Upload - Size Custom Validator - We can set the limit to the size of a file that can be uploaded
<
asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <br /> <asp:FileUpload ID="FileUpload1" runat="server" Width="269px" /> <br /> <asp:RequiredFieldValidator ID="rfv_FileUpload1" runat="server" ErrorMessage="File Required" ValidationGroup="UploadValidationGroup" ControlToValidate="FileUpload1"></asp:RequiredFieldValidator> <br /> <asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="File Size too big. Upload denied" Text="File Size too big. Upload denied" OnServerValidate="FileUploadServerValidation" ValidationGroup="UploadValidationGroup" ></asp:CustomValidator> <br /> <asp:Button ID="btnUpload" runat="server" Text="Upload" ValidationGroup="UploadValidationGroup" onclick="btnUpload_Click" />
using System;
using System.Configuration;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
private bool sizeValidated;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void FileUploadServerValidation(object source, ServerValidateEventArgs args)
{
if (!FileUpload1.HasFile)
{
args.IsValid = false;
}
else
{
int l = FileUpload1.PostedFile.ContentLength;
int configLimit;
if( ! int.TryParse(ConfigurationManager.AppSettings["FileSizeUploadLimit"], out configLimit )){
args.IsValid = false;
return;
}
if (l <= configLimit)
{
args.IsValid = true;
sizeValidated = true;
}
else
{
args.IsValid = false;
sizeValidated = false;
}
}
}
protected void btnUpload_Click(object sender, EventArgs e)
{
if (sizeValidated == false)
return;
//------- save uploaded file
FileUpload1.PostedFile.SaveAs(@"c:\temp" + FileUpload1.PostedFile.FileName);
}
}