It makes perfectly sense to return multiple items per attribute type. Think of attributes designed with a base class. Or attributes where you could supply multiple options/types by constructor.
One example is the XmlArrayItemAttribute
See the MSDN: XmlArrayItemAttribute Class
If you want to restrict your attributes to be only used once, you could add the allowmultiple:=False
flag to your AttributeUsage
.
@Comment
The DescriptionAttribute
has AllowMultiple:=False (Which is the default if you don't specifiy it - at least in VB.NET). To get the effect, create your own attribute derived from Attribute
and mark it with AttributeUsage
where you set AllowMultiple = True
.