2010-04-27 4 views
5

Comment faire ce qui suit avec les attributs C#. Voici un extrait de Java qui annote les paramètres d'un constructeur. En examinant les annotations C#, il ne me semble pas que je puisse annoter les paramètres. Est-ce possible?Attributs de paramètre dans C#

Répondre

13

Vous pouvez absolument attribuer des paramètres:

public Factory([Inject("name")] String name, [Inject("value")] String value) 

Bien sûr, l'attribut doit être déclaré permis à spécifier des paramètres via AttributeUsageAttribute(AttributeTargets.Parameter).

Voir OutAttribute et DefaultParameterValueAttribute comme exemples.

+0

je suis juste en tapant ceci! Tu es trop rapide pour moi = D – Tejs

1

Créez une classe d'attributs avec AttributeUsageAttribute et eux, utilisez Réflexion pour inspecter les paramètres.

[System.AttributeUsage(System.AttributeTargets.All)] 
class NewAttribute : System.Attribute { } 

Accessing Attributes with Reflection