Upload di immagini in Asp.NET e VB.NET
Quello che vogliamo fare è caricare più immagini in Asp.NET usando VB.NET; per essere precisi, il progetto è di tpo webform.
Abbiamo diverse possibilità, sia lato codice HTML che lato server.
Io ho usato più campi in questo modo:
<asp:FileUpload ID="fuFoto1" runat="server" ToolTip="Image" />
<br />
<asp:FileUpload ID="fuFoto2" runat="server" ToolTip="Image" />
<br />
<asp:FileUpload ID="fuFoto3" runat="server" ToolTip="Image" />
<br />
Lato code-behind:
Private savePath As String = Server.MapPath("~/ar/allegati/news/")
Dim immagini As HttpFileCollection = Request.Files
For i = 0 To immagini.Count - 1
Dim imgUpload As String = ""
Dim f As HttpPostedFile = immagini(i)
If Not String.IsNullOrEmpty(f.FileName.ToString) Then
imgUpload = ComponiNomeImgData(f.FileName)
CaricaFoto(imgUpload, f)
End If
Next
Private Sub CaricaFoto(ByVal NomeUpload As String, fu As HttpPostedFile)
Dim fileName As String = NomeUpload
Dim extension As String = Path.GetExtension(NomeUpload)
If (extension = ".jpg") Then ' ALTRI VOSTRI CONTROLLI
Try
fu.SaveAs(savePath + fileName)
Catch ex As Exception
' MOSTRA ERRORE
End Try
Else
' FILE CARICATO
End If
End Sub
Iteriamo sulla collezione di immagini con HttpFileCollection; ad ogni iterazione prendiamo il file corrente con HttpPostedFile, che passiamo alla nostra funzione.
Facciamo i controlli sul file corrente, e se vanno a buon fine salviamo il tutto con SaveAs.
Enjoy!
asp.net vbnet httpfilecollection httppostedfile
Commentami!