Bonjour,

En ce moment j'essaie de tester plusieurs manières d’accéder à une base de données locale. J'ai créé un outils de génération de code qui me permet de récupérer les infos d'une table sql et de les utiliser pour créer une classe correspondant à la table.

Par exemple, la classe Produit (représentant la table Produit..) dans un fichier Produit.vb:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Public Class [Produit]
 
 
    Property [ID] As System.Int32    'ID
    Property [Libelle] As System.String    'Libelle
    Property [Prix] As System.Decimal    'Prix
 
    Sub New()
    End Sub
 
    Sub New(ByVal params As Object)
        Me.ID = params(0)
        Me.Libelle = params(1)
        Me.Prix = params(2)
    End Sub
 
End Class
J'ai une méthode qui me permet d'utiliser ces classes de façon générique:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
    Public Function GetInstance(a As Assembly, className As String, params As Object) As Object
        Try
            Dim t As Type = a.[GetType](className)
            Return Activator.CreateInstance(t, params)
        Catch generatedExceptionName As ArgumentNullException
            Return Nothing
        End Try
 
    End Function
Tout marche très bien cependant je me pose une question:
Est il possible de générer des objets similaires sans avoir à créer le fichier.vb, mais simplement une classe en mémoire qui se chargerait au lancement de l'application? Si oui, y a t' il des inconvénients à utiliser une telle démarche?