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 :

Créer dynamiquement une structure


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 198
    Par défaut Créer dynamiquement une structure
    Bonjour,

    Je voudrais savoir s'il est possible de créer une classe ( ou un type ) dynamiquement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var test = new {Text = "text", Nb = 3 };
    Ceci va créer une structure avec deux champs mais est-il possible de recevoir une liste d'attributs en paramètre qui déterminera les champs ?
    Comme ceci pour arriver même résultat que précédemment.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    /*
             * fields[0] = "Text"
             * fields[1] = "Nb"
             */
            public void DoIt (List<string> fields)
            {
                ...                        
            }
    C'est le mécanisme de reflection ou rien avoir ?

    Merci

  2. #2
    Membre Expert Avatar de DonQuiche
    Inscrit en
    Septembre 2010
    Messages
    2 741
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 2 741
    Par défaut
    Bonjour.

    Deux façons de faire ceci :
    * La complexe, celle où l'on souhaite créer dynamiquement une structure qui implémentera une interface connue à l'avance et à travers laquelle on manipulera cette structure. Grosso modo il faut générer une assembly à la volée, soit en fournissant un code VB ou C# sous forme de chaîne qu'on compilera à l'exécution, soit en émettant directement du code IL. Je peux détailler si besoin est.
    * La simple : un ExpandoObject. Les exemples donnés par MSDN sont assez parlants et l'objet implémente par ailleurs IDictionary<String, Object>.

Discussions similaires

  1. Réponses: 7
    Dernier message: 01/08/2006, 18h06
  2. créer dynamiquement une form
    Par paolo2002 dans le forum Delphi
    Réponses: 5
    Dernier message: 11/07/2006, 14h15
  3. est il possible de créer dynamiquement une class ???
    Par SpaceFrog dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 12/07/2005, 16h22
  4. [MFC] Créer dynamiquement une classe
    Par vanitom dans le forum MFC
    Réponses: 9
    Dernier message: 11/12/2004, 13h23

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