我正在进行代码生成,创建一个自定义属性来使用CodeDOM来装饰一个类,目标是C#和VB。 为此,我正在创建CodeAttributeDeclaration类的实例。
我目前正在设置AttributeType属性以及Name,但似乎没有使用它。相反,Name属性是用于生成属性声明的所有内容。
我错过了什么吗?这个属性用于什么?
答案 0 :(得分:2)
这是另一种选择(我相信,有一段时间没有完成CodeDOM) - 您可以使用名称或类型定义属性声明。如果两者都设置了,它(显然)将使用该名称。查看此类型的constructor的重载可以提供一些线索。
查看反射器,事实证明,设置Name总是强制AttributeType为同一名称的CodeTypeReference,并且采用TypeReference的构造函数也总是设置名称 - 所以甚至不能设置一个名称另一个。