Bonjour à tous et à toutes,

Voici mon petit souci : j'ai une classe possédant deux constructeurs :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
Public Sub New(ByVal t As String, ByVal rep As String, ByVal dt As DataTable, ByVal fic As String, ByVal rc As Boolean)
 
[...]
 
End Sub
 
Public Sub New(ByVal t As String, ByVal rep As String, ByVal ctbe As CollectionTableExport, ByVal fic As String, ByVal rc As Boolean)
 
[...]
 
End Sub
CollectionTableExport étant une autre de mes classes.

Si j'appelle le premier constructeur, y a pas de problème. Si j'appelle le second ça compile pas et j'ai l'erreur :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
La résolution de surcharge a échoué, car aucun 'New' accessible ne peut être appelé sans conversion restrictive :
'Public Sub New(t As String, rep As String, ctbe As Engine.CollectionTableExport, fic As String, rc As Boolean)' : L'argument qui correspond au paramètre 'ctbe' passe de 'System.Object' à 'Engine.CollectionTableExport'.
'Public Sub New(t As String, rep As String, dt As System.Data.DataTable, fic As String, rc As Boolean)' : L'argument qui correspond au paramètre 'dt' passe de 'System.Object' à 'System.Data.DataTable'.
Si quelqu'un a une idée ?