के बाद FileUpload नियंत्रण का पथ रखें मेरे पास एक FileUpload नियंत्रण और एक DropDownlist नियंत्रण एक अद्यतन पैनेल में है और जब उपयोगकर्ता FileUpload नियंत्रण (अभी तक कोई अपलोड नहीं) के लिए फ़ाइल का चयन करता है, इस बीच उपयोगकर्ता ड्रॉपडाउनलिस्ट नियंत्रण से एक विकल्प चुनता है जो एक पोस्टबैक का कारण बन जाएगा! पृष्ठ पोस्टबैक के बाद, FileUpload नियंत्रण में चयनित पथ चला जाएगा। मैं FileUpload नियंत्रण में पथ कैसे बना सकता हूं? फाइल अपलोड करने का काम काम कर रहा था। मुझे उम्मीद है कि पोस्टबैक के दौरान FileUpload नियंत्रण में पथ रह सकता है।पोस्टबैक
मैंने नीचे दिए गए समाधान की कोशिश की है लेकिन "FileUpload1.HasFile" मेरे लिए झूठी वापसी करेगा।
If Session("FileUpload1") Is Nothing AndAlso Upload.HasFile Then
Session("FileUpload1") = Upload
lblPhotoUploadErr.Text = Upload.FileName
ElseIf Session("FileUpload1") IsNot Nothing AndAlso (Not Upload.HasFile) Then
Upload = DirectCast(Session("FileUpload1"), FileUpload)
lblPhotoUploadErr.Text = Upload.FileName
ElseIf Upload.HasFile Then
Session("FileUpload1") = Upload
lblPhotoUploadErr.Text = Upload.FileName
End If
लेकिन नीचे अपलोड किए गए फ़ंक्शन में "अपलोड.हासफ़ाइल" निष्पादित होने पर सत्य होगा।
Public Sub uploadPhoto()
Dim FileOK As Boolean = False
Dim FileSaved As Boolean = False
Dim CandidateCode As String = Nothing
Dim newFileName As String = Nothing
Dim extension As String = Nothing
Dim fileNameWithoutExt As String = Nothing
If txtCandidateCode.Text.Trim <> "" Then
CandidateCode = txtCandidateCode.Text.Trim
End If
If Upload.HasFile Then
Dim FileExtension As String = Path.GetExtension(Upload.FileName).ToLower
Dim allowedExtensions() As String = {".png", ".jpeg", ".jpg", ".gif"}
Dim i As Integer = 0
Do While (i < allowedExtensions.Length)
If (FileExtension = allowedExtensions(i)) Then
FileOK = True
End If
i = (i + 1)
Loop
End If
If FileOK Then
Try
fileNameWithoutExt = Path.GetFileNameWithoutExtension(Upload.FileName)
extension = Path.GetExtension(Upload.FileName)
newFileName = fileNameWithoutExt + "_" + CandidateCode + extension
Upload.PostedFile.SaveAs((path1 + newFileName))
FileSaved = True
Catch ex As Exception
lblPhotoUploadErr.Text = ("File could not be uploaded." + ex.Message.ToString)
FileSaved = False
End Try
Else
lblPhotoUploadErr.Text = "Cannot accept files of this type."
End If
If FileSaved Then
pnlUpload.Visible = False
imgPhoto.ImageUrl = ("~/images/" + newFileName)
hfPhotoUploadPath.Value = ("~/images/" + newFileName)
hfFileExtension.Value = extension
hfPhotoUploadFileName.Value = fileNameWithoutExt
End If
End Sub
हाँ! ड्रॉपडाउन को पोस्टबैक की ज़रूरत है! असल में, मैंने एक अद्यतन पैनेल के अंदर काम करने के लिए फ़ाइल अपलोड किया है और यह बहुत अच्छा काम कर रहा है! –
आपने इसे कैसे काम किया? – adrianos
मैंने पेज_लोड के तहत "पेज.फॉर्म.एट्रिब्यूट्स जोड़ें। (" एंटीटाइप "," मल्टीपार्ट/फॉर्म-डेटा ") जोड़ें और अपलोड बटन के लिए पोस्टबैक ट्रिगर है। –