12

I want to clear the file path from the file upload. The file upload is inside the update panel and I am using a AsyncFileUpload. How can I clear the file and change the background color of the fileupload

btnAudUpload_Click Method

string filename =FileUpload.FileName;
string Fullpath = Path.Combine(@"D:\Media", filename);
if (FileUpload.HasFile)
  { 
 if (filename.ToLower().EndsWith("mp4"))
     {  
      //Saving the file
     }
  else
     {
          //I want to clear the  FileUpload content here
     }    
  }
Murthy
  • 1,502
  • 11
  • 31
  • 45

4 Answers4

13

Clear the Attributes worked for me... but that will remove styles and other stuff

string filename =FileUpload.FileName;
string Fullpath = Path.Combine(@"D:\Media", filename);
if (FileUpload.HasFile)
{ 
  if (filename.ToLower().EndsWith("mp4"))
  {  
     //Saving the file
  }
  else
  {
     //I want to clear the  FileUpload content here
     FileUpload.Attributes.Clear();
  }    
}
7

I know this thread is almost a year old, but this still seems to be a prevalent issue. The easiest fix I've found is to set the file upload control to a new instance of it.

FileUpload1 = new FileUpload();
Justin Ross
  • 372
  • 5
  • 15
  • 1
    This definitely gets the job done, although I have to wonder... Do you need to run a Dispose() on the previous control in order to free up its resources? – MadHenchbot May 30 '13 at 21:26
  • Just a guess, but I would say no. Garbage collection should take care of the cleanup. – Justin Ross Jun 01 '13 at 01:03
3

If you want to have interactivity without relouding the page you'll have to use JavaScript. That's why I would check the file extension on the client side instead of the server side. Example:

function checkFile() {
    var input = document.getElementById('fileUpload').value.toLowerCase();
    var extension = '.mp4';

    if (!input.indexOf(extension, input.length - extension.length) != -1) {
        alert('Invalid file extension. Only .mp4 is allowed.');
        document.getElementById('fileUpload').value = '';
    }
}

The only thing you'll have to add is changing the fileUpload background color which is very easy to do.

Good luck!

Alex van den Hoogen
  • 744
  • 1
  • 5
  • 22
  • question: how to change the background color, where is the solution, you posted code which not required, stop placing use less answers – Sun Mar 10 '14 at 10:59
1

I think when you do postback the file contnet property will removed by default, because a security reasons !