IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[1.1][VB.NET] surcharge constructeur conversion restrictive


Sujet :

ASP.NET

  1. #1
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 270
    Par défaut [1.1][VB.NET] surcharge constructeur conversion restrictive
    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 ?

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Par défaut
    Salut,

    J'ai l'impression que tu passes un objet de type "Object" comme 3ieme paramètre de tes constructeurs et le compilateur ne souhaite pas effectuer un cast implicite (en C# c'est normal, en VB je sais pas trop). Si c'est bien ce qui se passe alors un cast explicite pourrait régler l'affaire si tu es bien sure que ton objet de type Object est en fait un CollectionTableExport ou un Datatable.
    Si tu pouvais nous donner également le code qui appelle ton constructeur, avec le type de chacun des paramètres ça pourrait aider à comprendre.

  3. #3
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 270
    Par défaut
    Salut,

    Effectivement avec le cast explicite : ctype(mavariable, CollectionTableExport) s'est bien passé .... bizarre parce que j'initialise bien ma variable avec le constructeur de la classe et je lui passe même des valeurs

  4. #4
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 270
    Par défaut
    Hello tous,

    J'ai réutilisé depuis ma fonction dans d'autres pages et pas besoin de cast explicite. Comme c'était une page de test, j'insiste pas

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.NET 2.0] conversion caratère en binaire
    Par Emcy dans le forum Windows Forms
    Réponses: 9
    Dernier message: 25/07/2006, 14h07
  2. [C++.NET] Erreur de conversion
    Par raboin dans le forum VC++ .NET
    Réponses: 10
    Dernier message: 28/04/2006, 17h51
  3. [VB.NET]Comment obtenir conversion exacte Single>Double?
    Par Misterburma dans le forum VB.NET
    Réponses: 9
    Dernier message: 09/02/2006, 22h24
  4. [VB.net]problème de conversion de code c# vers VB.net
    Par cladsam dans le forum Windows Forms
    Réponses: 2
    Dernier message: 18/10/2005, 14h07
  5. [VB .NET] Surcharge d'opérateur
    Par Franckintosh dans le forum VB.NET
    Réponses: 2
    Dernier message: 07/09/2004, 19h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo