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

C# Discussion :

Activator.CreateInstance avec paramètre


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 165
    Par défaut Activator.CreateInstance avec paramètre
    Bonjour,

    Je voudrais savoir comment, avec la reflexion appeler un constructeur mais avec paramètre. Je pensais dc appeler avec MethodBase.Invoke mais VS ne me propose pas dans sa liste de méthode Invoke alors que c'est bien marqué sur MSDN .

    Merci.

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    826
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 826
    Par défaut
    Citation Envoyé par DuyBinh Voir le message
    Bonjour,

    Je voudrais savoir comment, avec la reflexion appeler un constructeur mais avec paramètre. Je pensais dc appeler avec MethodBase.Invoke mais VS ne me propose pas dans sa liste de méthode Invoke alors que c'est bien marqué sur MSDN .

    Merci.
    Via Activator.CreateInstance.

    par exemple,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DictionaryEntry entry = (DictionaryEntry)Activator.CreateInstance(typeof(DictionaryEntry), new object[] { "clé", "valeur" });
    Le second argument est un tableau des paramètres à passer au contrusteur. La classe Activator va recherche celui qui correspond le mieux.

  3. #3
    Membre Expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 165
    Par défaut
    Désolé, j'ai testé à chaque fois on me renvoie null .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Object o = GetInstance(System.Reflection.Assembly.GetExecutingAssembly(), this.ClassName);
    //L'objet o renvoie null
     
    public static object GetInstance(System.Reflection.Assembly a, string className)
            {
                try
                {
                    Type t = a.GetType(className);
     
                    return Activator.CreateInstance(t, new object[] { "DataSet" });
                }
                catch (ArgumentNullException) { return null; } // Type non trouvé
            }

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    826
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 826
    Par défaut
    Vu ton code, le problème doit venir de la façon dont tu récupère le type. es tu sûr que t est non null avec de l'envoyer à Activator ?

  5. #5
    Membre Expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 165
    Par défaut
    C'est bon problème résolu en fait il fallait juste virer les guillemets à "DataSet" .

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 23/02/2007, 19h55
  2. [VB.net] Thread avec paramètres
    Par WriteLN dans le forum Windows Forms
    Réponses: 4
    Dernier message: 19/04/2005, 17h42
  3. requête SQL avec paramètre en vb avec base de donnée SQL srv
    Par dialydany dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 01/02/2005, 10h33
  4. [PL/SQL] Curseur avec Paramètre
    Par blids dans le forum Oracle
    Réponses: 5
    Dernier message: 10/10/2004, 20h07
  5. Réponses: 3
    Dernier message: 21/05/2003, 11h44

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