是否有可能在一個屬性構造函數來獲取具有分配給它的屬性的類,而不需要在傳遞類名。獲得在C#中的屬性類
[MyAttr]
public class A{}
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
[Serializable]
public class MyAttrAttribute: Attribute
{
public MyAttrAttribute()
{
//get info here about the class A etc
}
}
「你從代表該類的類型對象中這樣做」 - 要更清楚一點,你需要從'Type'中獲取屬性,它表示*的所有*實例上課......所以你不一定*有一個實例 – 2011-05-13 06:42:03
爲了審計的目的,我需要在每個類上放置一個屬性,屬性表示審計夥伴類,幾乎在所有情況下,夥伴類的命名與原來的「審計」相同,因此, d喜歡有一個默認的構造函數,當你不給任何賦值時它使用這個默認的約定 – 2011-05-13 06:45:42
@Mark,Type對象並不代表該類的所有實例,它代表了類本身。 @Danielhttp,我會做一個幫手來獲得好友類;該方法將檢索該屬性,並且如果該屬性處於其默認狀態(或者完全缺失),這意味着默認約定。 – phoog 2011-05-13 06:55:33