2010-08-09 4 views
3

DescriptionAttribut ne permet pas d'être défini plusieurs fois.Attribut de description multiple dans C#

Y a-t-il un moyen d'avoir cette possibilité de définir un type de descriptionAttribute plusieurs fois à la propriété ou enum par exemple.

+0

Ajoutez votre solution en réponse à votre propre question plutôt qu'une partie du texte de la question. –

Répondre

1

Solution:

public class ExtraDescriptionAttribute : DescriptionAttribute 
{ 
    private string extraInfo; public string ExtraInfo { get { return extraInfo; } set { extraInfo = value; } } 
    public ExtraDescriptionAttribute(string description) 
    { 
     this.DescriptionValue = description; 
     this.extraInfo = String.Empty; 
    } 
} 
0

Vous devriez être appeler le constructeur de la classe de base et enlever la propriété Description. Cela montre également comment définir la propriété ExtraInfo.

public class ExtraDescriptionAttribute : DescriptionAttribute 
{ 
    public String ExtraInfo { get; private set; } 

    public ExtraDescriptionAttribute (String description, String extraInfo) : base(description) 
    { 
     ExtraInfo = extraInfo; 
    } 
} 

L'attribut description ressemblera maintenant à:

[ExtraDescriptionAttribute("Description", "ExtraInfo")]