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 :

Comment créer des fonctions/méthode dynamiquement en c sharp


Sujet :

C#

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 256
    Points : 107
    Points
    107
    Par défaut Comment créer des fonctions/méthode dynamiquement en c sharp
    Bonsoir,

    en java, en actionscript et autres, il est possible de créer une variable contenant des instruction à exécuter, ok?

    ça ressemble à ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Monobjet = function(){
     
    Mon_instruction();
     
    }
    que j'exécute rien qu'en faisant

    "Monobjet;"

    je sais que j'ai dja vu faire en c# mais je ne m'en souviens plus

    je sais que c'est avec method ou proc ... quelque chose

    est-ce que quelqu'un saurait m'aider?

    merciiiiii

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 256
    Points : 107
    Points
    107
    Par défaut
    Re-salut les gars,

    J'ai trouvé ce que je voulais faire mais en partie

    grace à la classe MethodInvoker
    ca donne ca

    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
     
    using System.Windows.Forms;
     
                MethodInvoker mi = null;
                if (true)
                {
                    mi = new MethodInvoker(MaMethode1);
                }
                else
                {
                    mi = new MethodInvoker(MaMethode1);
                }
                //... un peu plus loin je fais pour executer dynamiquement
     
                mi.Invoke();

    mais j'aimerais vraiment le faire comme on le fait en java ou actionscript

    juste parce que je suis sûr l'avoir déjà vu mais aussi je suis sûr que c'est beaucoup plus rapide avec la manière dont j'aimerai le faire.

    en plus je l'utilise dans une classe que j'instancie et chez Microsoft ils disent que :
    Cette API prend en charge l'infrastructure .NET Framework et n'est pas destinée à être utilisée directement à partir de votre code.
    LOOOOOOOL
    ce truc marque comme je le veux mais, là je sais vraiment plus quoi faire lol



    vous comprenez?

    merci pour votre patience les gars

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 754
    Points
    39 754
    Par défaut
    Le type d'objet que tu cherches s'appelle un Delegate
    On définit le code associé au delegate avec une expression lambda (C#3) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
                Action f1 = () => { Console.WriteLine("hello world"); };
     
                f1();
     
                Func<string, int, string> f2 =
                    (string a, int b) =>
                    {
                        return a.Substring(0, b);
                    };
     
                Console.WriteLine(f2("abcd", 3));

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 256
    Points : 107
    Points
    107
    Par défaut
    SUPER!!!!!
    Merci merci et encore merci!

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

Discussions similaires

  1. [AC-2003] Comment créer des champs nommés dynamiquement
    Par franz.moraine dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 03/07/2012, 14h35
  2. Réponses: 35
    Dernier message: 14/11/2008, 15h30
  3. Comment créer une fonction d'archivage des entrées
    Par vietzims dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/05/2008, 23h15
  4. Créer des fonctions dynamiques
    Par Superne0 dans le forum C
    Réponses: 88
    Dernier message: 24/03/2007, 10h26
  5. comment créer des séquences lignes dynamiquement
    Par aelmedra dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 14/09/2006, 13h42

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