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

    Ancora riunire + funzioni in un solo file

    Premetto che ho fatto una ricerca e qualcosa ho trovato ma per me è ancora di difficile comprensione ho bisogno di qualcosa più terra terra. Il mio problema è riunire delle funzioni ad esempio:

    Public Function ConvertiData(Value as Object) as String
    If Not IsDBNull(Value) Then
    Return DateTime.Parse(Value).ToString("d")
    Else
    Return ""
    End If
    End Function

    che poi utilizzo in vari file ascx richiamandole all'interno del repeater così:

    <%#ConvertiData(Container.DataItem("data"))%>

    Ora qual'è il metodo migliore per non riscrivere la funzione in ogni file ascx ?
    Ho letto di creare una classe e dichiarando la funzione shared oppure chi dice di utilizzare un include classico.
    2) nel caso di una classe come devo crearla cioè che tipo di file devo creare ? e come poi includerla nel file ascx ?

  2. #2
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    fai un file (mi sembra di aver capito in vb)
    codice:
    NameSpace Utils
        Class MieFunzioni
           Private sub New()
    'un costruttore privato per evitare che si istanzi la classe '(non sono sicuro di questa sintassi in vb.net, so' che in c# sarebbe 
    'private MieFunzioni(){}
           End Sub
           Public Shared Function ConvertiData(pippo as string,pluto as .....etc) as Date
           End Sub
           Public Shared Sub AltraFunzione(pippo as string)
           End Sub
           ....
           ....  
        End Class
    End NameSpace
    Compili, metti nella directory bin
    ed in cima aggiungi un riferimento al namespace Utils (o come hai denominato il namespace

  3. #3
    Grazie sei stato molto chiaro e quindi vinci un'altra domanda:

    Eventuali namespace necessari alle funzioni vanno inclusi nella classe che si sta creando ?

    e alla fine devo ottenere una Dll o è file con estensione vb compilato ?

  4. #4
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    si utilizzi degli import in testa al file

    un esempio tirato via:
    codice:
    Imports System.IO
    Imports System.Drawing
    Imports System.Data
    
    Namespace Utils
        Class FunzioniIO
              Public Shared Function ApriFile(string filePath) as String
              'Bla bla bla
              End Function     
        End Class
        Class FunzioniImg
              Public Shared Sub RedimImg(string filePath)
              'Bla bla bla
              End Sub
        End Class
        Class Conversione
              Public Shared Function ConvertiData(string data) as Date 
             'Bla bla bla
              End Function
        End Class
    End Namespace
    oppure puoi anche scrivere file separati per ogni tipo di categoria ma li metti sempre sotto il solito namespace
    e poi compili tutto con visualStudio(o manualmente via vbc)
    vbc /t:library /r:[librerie che servono per la compilazione] files.vb (il file o i file accodati)

    la dll generata la metti in /bin della directory virtuale
    (Visual Studio fa tutto da se quando generi)

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 © 2025 vBulletin Solutions, Inc. All rights reserved.