Solved

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

Posted on 2006-06-12
3
2,447 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
[X]
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
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

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

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…
User art_snob (http://www.experts-exchange.com/M_6114203.html) encountered strange behavior of Android Web browser on his Mobile Web site. It took a while to find the true cause. It happens so, that the Android Web browser (at least up to OS ver. 2.…
There's a multitude of different network monitoring solutions out there, and you're probably wondering what makes NetCrunch so special. It's completely agentless, but does let you create an agent, if you desire. It offers powerful scalability …
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…

691 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