← 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);
    }
}


Si è verificato un errore imprevisto. Ricarica

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.