Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Restrict the size of file upload in asp.net

I want to restrict my file size upload to a certain limit. But, the problem here is that I want to provide a popup alert when the upload size is exceeded . But , instead the web page here shows the following error

HTTP Error 404.13 - Not Found

The request filtering module is configured to deny a request that exceeds the request content length. Here's my code

 protected void Button1_Click(object sender, EventArgs e)
{
    if (fuDocpath.HasFiles)
    {
        try
        {
            DateTime now = DateTime.Now;
            lbldateStamp.Text = now.ToString("mm_dd_yyyy_hh_mm_ss");
            //string foldername = lblsessionID.Text + "_" + lbldateStamp.Text;
            string folderpath = (Server.MapPath("~/Uploaded_Files/") + lblsessionID.Text + "_" + lbldateStamp.Text + "/");
            Directory.CreateDirectory(folderpath);
            if (fuDocpath.PostedFile.ContentLength < 20970000)
            {
                try
                {
                    foreach (HttpPostedFile files in fuDocpath.PostedFiles)
                    {
                        string filename = Path.GetFileName(files.FileName);
                        string folderpath1 = folderpath + "/";
                        fuDocpath.SaveAs(folderpath1 + filename);
                        lblName.Text = lblName.Text + "|" + filename;
                        lblerror.Text = string.Empty;
                    }
                }
                catch (Exception eex)
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('" + eex.Message + "')", true);
                }

            }
        }
        catch (Exception ex)
        {
            lblerror.Text = "File couldn't be uploaded." + ex.Message;
            lblName.Text = string.Empty;
        }
    }
}
like image 585
krishb591993 Avatar asked Jul 04 '14 05:07

krishb591993


People also ask

How to restrict image size while uploading in ASP net?

Uploading a file can be restricted based on its size, by setting the maximum file size limit in the webconfig file. Create a website with UploadBox control and set the maxRequestLength key value for httpRuntime tag under system. web as follows. The value of maxRequestLength has to be given in Kilo Bytes (KB).

What is the default size limitation of file upload in asp net file upload control?

The default is 4096 KB. If the threshold is exceeded, a ConfigurationErrorsException exception is thrown. We should also increase the executionTimeout value if the transmitted file sizes are going to be “large”.

Is ASP Net Max file upload size?

bydefault file upload limit set by asp.net is 20MB.


2 Answers

Look at this - How to increase the max upload file size in ASP.NET?

You can change the max request size in web.config - the default is 4Mb

like image 112
sh1rts Avatar answered Oct 26 '22 11:10

sh1rts


Just in case you're wondering about the nature of the error code/message thrown by the browser, here is a post that addresses it. I'll quote a paragraph just in case of broken links in future:

By default, ASP.NET only permits files that are 4,096 kilobytes (KB) (or 4 MB) or less to be uploaded to the Web server. To upload larger files, you must change the maxRequestLength parameter of the section in the Web.config file.

Note When the maxRequestLength attribute is set in the Machine.config file and then a request is posted (for example, a file upload) that exceeds the value of maxRequestLength, a custom error page cannot be displayed. Instead, Microsoft Internet Explorer will display a "Cannot find server or DNS" error message.

The workaround is to modify the Machine.config file as explained in the answer given earlier by @sh1rts.

like image 28
Wilbur Omae Avatar answered Oct 26 '22 10:10

Wilbur Omae