CodeDom et les constructeurs publiques [Résolu]

Signaler
Messages postés
305
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 août 2011
-
Messages postés
305
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 août 2011
-
Bonjour,

Je souhaite créer un programme qui utilise le namespace CodeDom pour générer automatiquement du code C#. Je parviens à créer des namespaces, des classes, des membres de classes, ect...
Par contre, ce que je ne parviens pas à faire, c'est créer un constructeur publique et non statique aux classes que je génère.

Exemple :

CodeTypeDeclaration type1 = new CodeTypeDeclaration("Type1");
CodeTypeConstructor constructor2 = new CodeTypeConstructor();
type1.Members.Add( constructor2 );

Ce qui me permet de générer le code suivant :

public class Type1
{
    static Type1()
    {
    }
}

... C'est pas tout à fait ce que je veux : moi, je voudrais que le constructeur soit publique, et non-statique.

Quelqu'un sait comment faire ?

Merci d'avance !

2 réponses

Messages postés
687
Date d'inscription
lundi 10 janvier 2005
Statut
Membre
Dernière intervention
27 août 2014
3
Salut
essaie voir
constructor2.Attributes = MemberAttributes.Public | MemberAttributes.Final;

j'y fais de tête(donc pas vérifier) mais cela devrait etre quelque chose de ce style
++

Se poser les bonnes questions ;) 
apporter les réponses
http://romagny13.over-blog.com/
Messages postés
305
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 août 2011
6
Nan, c'est pas ca ^^
Mais merci de ton aide !  :-D
La bonne réponse était :

CodeConstructor

construtor =
new
CodeConstructor();construtor.Attributes =

MemberAttributes.Public;

... Ouais, en fait, faut utiliser CodeConstructor, et non CodeTypeConstructor.