2010-11-25 1 views
0

Je crée du code, en créant un attribut personnalisé pour décorer une classe en utilisant CodeDOM, en ciblant C# et VB. Pour ce faire, je crée une instance de la classe CodeAttributeDeclaration.À quoi la propriété AttributeType est-elle utilisée dans la classe CodeDom CodeAttributeDeclaration?

Je définis actuellement la propriété AttributeType, ainsi que le nom, mais il ne semble pas être utilisé. Au lieu de cela, la propriété Name est tout ce qui est utilisé pour produire la déclaration d'attribut.

Ai-je raté quelque chose? A quoi sert cette propriété?

Répondre

2

C'est une alternative (je crois, je n'ai pas fait CodeDOM depuis un moment) - vous pouvez définir la déclaration d'attribut en utilisant un nom ou un type. Si les deux sont définis, il utilisera (apparemment) le nom. En regardant les surcharges pour le constructor de ce type donne quelques indices à cela. En regardant dans le réflecteur, il s'avère que le paramètre Name force toujours AttributeType à être un CodeTypeReference au même nom, et les constructeurs qui prennent le TypeReference définissent toujours aussi le nom - donc ce n'est même pas celui qui peut être défini au lieu de l'autre.

Questions connexes