2010-07-15 2 views
0

J'apprends le T4 et je réussis à interroger ma classe personnalisée pour son membre. Ce dont j'ai besoin cependant, est de faire ressortir seulement les propriétés que j'ai créées, comme le prénom, le nom, et le code postal.Comment obtenir uniquement les propriétés créées par l'utilisateur en utilisant les membres microsoft.cci?

Voici un exemple de ce que je reçois en fait quand je l'utilise:

foreach(Microsoft.Cci.Member member in class.Members) 
{ 
    if(member.IsPublic) 
    { 
     Write(member.Name + ",\n"); 
    } 
} 

get_FirstName,

set_FirstName,

get_Surname,

set_Surname,

FirstName ,

Nom,

.ctor

Quelqu'un pourrait-il indiquer si son possible d'accéder simplement aux propriétés réelles et leurs types?

Merci beaucoup.

Répondre

0

Vous devez extraire les propriétés des membres. Vous pouvez identifier les membres PropertyNode par leur NodeType, qui sera NodeType.Property. par exemple:

foreach (PropertyNode property in type.Members 
       .Where(m => m.NodeType == NodeType.Property) 
       .Cast<PropertyNode>()) 
{ 
    //... 
} 
+0

Merci Nicole - Je vais essayer. – Paul

+0

Vous pouvez également utiliser type.Members.OfType () – altso

Questions connexes