Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Why does the FileUpload always return false for the hasFile status?

Posted on 2006-06-12
3
2,433 Views
Last Modified: 2010-08-05
I am using the FileUpload component but when I try to use it nothing happens.
I debugged and found that the hasFile returns false.

Here is the code I use. (Straight from MSDN)

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim FileUpload1 As New FileUpload
        If IsPostBack Then
            Dim path As String = Server.MapPath("~/UploadedImages/")
            Dim fileOK As Boolean = False

            If FileUpload1.HasFile Then
                Dim fileExtension As String
                fileExtension = System.IO.Path. _
                    GetExtension(FileUpload1.FileName).ToLower()
                Dim allowedExtensions As String() = _
                    {".jpg", ".jpeg", ".png", ".gif"}
                For i As Integer = 0 To allowedExtensions.Length - 1
                    If fileExtension = allowedExtensions(i) Then
                        fileOK = True
                    End If
                Next
                If fileOK Then
                    Try
                        FileUpload1.PostedFile.SaveAs(path & _
                             FileUpload1.FileName)
                        Label11.Text = "File uploaded!"
                    Catch ex As Exception
                        Label11.Text = "File could not be uploaded."
                    End Try
                Else
                    Label11.Text = "Cannot accept files of this type."
                End If
            End If
        End If
    End Sub
0
Comment
Question by:mackeyrj
3 Comments
 
LVL 5

Accepted Solution

by:
proten earned 250 total points
ID: 16888142
The first postback that occurs after the fileupload control contains data, is the only time the file uploads.  

If you set the upload control to a file location and then do anything at all to postback the page, the file will be there on the first postback only.  

So, if you are not going to save and/or process the file then, you need to save the file information in a session variable or some location that will persist on multiple postbacks.
0
 
LVL 12

Expert Comment

by:deanvanrooyen
ID: 16891878
so is the file uploading or not or have you answered your own question?
0
 

Author Comment

by:mackeyrj
ID: 16894739
Basicly you are right... I am using view state and the fileupload was in the wrong state so it was being posted before it was being filled with file location
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

One of the pain points with developing AJAX, JavaScript, JQuery, and other client-side behaviors is that JavaScript doesn’t allow for cross domain request for pulling content. For example, JavaScript code on www.johnchapman.name could not pull conte…
Sometimes in DotNetNuke module development you want to swap controls within the same module definition.  In doing this DNN (somewhat annoyingly) swaps the Skin and Container definitions to the default admin selections.  To get around this you need t…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

861 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question