J'ai un type, t
, et j'aimerais obtenir une liste des propriétés publiques qui ont l'attribut MyAttribute
. L'attribut est marqué avec AllowMultiple = false
, comme ceci:
[AttributeUsage(AttributeTargets.Property, AllowMultiple = false)]
Actuellement ce que j'ai est ce, mais je pense que il ya une meilleure façon:
foreach (PropertyInfo prop in t.GetProperties())
{
object[] attributes = prop.GetCustomAttributes(typeof(MyAttribute), true);
if (attributes.Length == 1)
{
//Property with my custom attribute
}
}
Comment puis-je améliorer cela? Toutes mes excuses si c'est un doublon, il y a une tonne de réflexion fils...il me semble qu'il est tout à fait un sujet chaud.