Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Datagrid con campo hyperlink

    Salve, ho un problema con un controllo datagrid collegato ad un database di Access.

    Il mio progetto è costituito dalla root, una sottocartella della root di nome "admin" e due sottocartelle di "admin" che si chiamano "datastore" e "allegati"

    Ho messo il mio database nella cartella "datastore", mentre la cartella "allegati" serve a contenere i file da me caricati sul server.

    Questo è il codice da me utilizzato nel pulsante Upload (funziona):

    codice:
    Sub btnLoad00_Click(sender As Object, e As EventArgs)
    
         If Not (fileControl00.PostedFile Is Nothing) Then
    
                  Try
    
                  Dim FileDest As String
    
                  Dim myPath As String = fileControl00.value
    
                  Dim myFileName As String = System.IO.Path.GetFileName(myPath)
    
                  FileDest = "allegati" & "/" & myFileName
    
                  hypFileDest.Text = (Server.MapPath(FileDest))
    
                  fileControl00.PostedFile.SaveAs((hypFileDest.Text))
    
           End If
    
    End Sub
    Come potete vedere, ho aggiunto il nome "allegati" davanti a quello del file caricato per conservare l'intero percorso.

    Ho collegato due controlli datagrid al mio database, il primo controllo è in una pagina della cartella "admin", il secondo è in una pagina della root.

    Entrambi i controlli datagrid contengono un campo hyperlink che punta al file allegato.

    Non ho nessun problema con la griglia nella cartella "admin" perché il percorso in archivio del file allegato è completo.

    Purtroppo, la griglia nella root non mi consente di lanciare il file allegato perché il percorso derivato dal database non contiene il nome della sottocartella "admin" ma solo, ad esempio, "allegati/nomefile.pdf".

    Quindi la mia domanda è la seguente: come posso intervenire nel controllo datagrid della root per fare in modo che, quando clicco sull'hyperlink, io possa aggiungere "admin" davanti al percorso del file recuperato dall'archivio?

    Questo è il codice da me usato per popolare la griglia:

    codice:
              Dim MySQL as string = "Select * from mytable"
    
              Dim myConn As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & server.mappath("datastore/database.mdb") & ";")
              Dim ds as DataSet=New DataSet()
              Dim Cmd as New OleDbDataAdapter(MySQL,MyConn)
    
              Cmd.Fill(ds,"mytable")
              dgTabella.Datasource=ds.Tables("mytable").DefaultView
              dgTabella.DataBind()
              MyConn.Close()
    Gradirò qualsiasi aiuto.

    Grazie in anticipo.

  2. #2
    puoi farlo più semplicemente cambiando la query, invece che "Select * from mytable", metti l'elenco dei campi separati da virgola, e su quello che contiene il percorso prima metti
    "admin\" & tuocampo

  3. #3
    Grazie per il consiglio. Comunque, dato che le colonne sono generate automaticamente, ho preferito aggiungere un nuovo campo al database in cui conservo il percorso del file preceduto dal nome della cartella.

    Saluti.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.