Bonjour à tous,
Dans une procédure bien spécifique j'ai besoin de travailler avec des variables qui peuvent posséder 3 versions de valeurs un peu à la manière des lignes ADO.NET qui permettent de lire les valeurs Original, Current et Modified.
Je ne suis pas loin d'y parvenir mais je but sur un problème lorsqu'il s'agit de spécifier le type de données à passer à ma procédure puisque je ne le connait pas à l'avance.
A noter que dans l'argument 'Value' je passe une valeur issue de la lecture d'une table ADO.NET qui peut prendre la valeur DBNull, dans ce cas la version Original prendra la valeur Nothing.

Voici le code que j'ai essayé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
    Public Structure TypeString
        Dim Original As String
        Dim Current As String
        Dim Modified As String
    End Structure
    Public Structure TypeBoolean
        Dim Original As Boolean
        Dim Current As Boolean
        Dim Modified As Boolean
    End Structure
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
Dim MyString As TypeString = SetVariable(Row("Col1"), "")
Dim MyBoolean as TypeBoolean = SetVariable(Row("Col2"), False)
    Private Function SetVariable(ByVal Value As Object, ByVal Defaut As Object) As Object
        Dim variable As ???????? = Nothing ' Ici je doit spécifier le type de variable.
        If Values Is DBNull.Value Then
            variable.Original = Nothing
            variable.Current = Defaut
        Else
            variable.Original = Values
            variable.Current = Values
        End If
        Return variable
    End Function
je n'ai encore rien figé à ce niveau là et tout est encore possible j'espère que vous pourrait m'aider.