Mam typ t
i chciałbym uzyskać listę właściwości publicznych, które mają atrybut MyAttribute
. Atrybut jest oznaczony AllowMultiple = false
następująco:
[AttributeUsage(AttributeTargets.Property, AllowMultiple = false)]
Obecnie mam to, ale myślę, że jest lepszy sposób:
foreach (PropertyInfo prop in t.GetProperties())
{
object[] attributes = prop.GetCustomAttributes(typeof(MyAttribute), true);
if (attributes.Length == 1)
{
//Property with my custom attribute
}
}
Jak mogę to poprawić? Przepraszam, jeśli to duplikat, jest mnóstwo wątków refleksyjnych ... wydaje się, że to dość gorący temat.