タイプt
があり、属性を持つパブリックプロパティのリストを取得したいと考えていますMyAttribute
。この属性はAllowMultiple = false
、次のようにでマークされています。
[AttributeUsage(AttributeTargets.Property, AllowMultiple = false)]
現在私が持っているのはこれですが、もっと良い方法があると思っています:
foreach (PropertyInfo prop in t.GetProperties())
{
object[] attributes = prop.GetCustomAttributes(typeof(MyAttribute), true);
if (attributes.Length == 1)
{
//Property with my custom attribute
}
}
どうすればこれを改善できますか?申し訳ありませんが、これが重複している場合、そこには大量のリフレクションスレッドがあります...それは非常にホットなトピックのようです。