एक SO प्रश्न से प्रेरित। विशेषता श्रेणी में IsDefined () पद्धति के लिए कई अधिभार हैं । कवर की गई विशेषताएँ असेंबली, मॉड्यूल, मेम्बरइन्फो, पैरामीटाइन्फो पर लागू होती हैं। MemberInfo ओवरलोड में PropertyInfo, FieldInfo, EventInfo, MethodInfo, ConstructorInfo शामिल हैं।
यह सबसे ज्यादा एटिट्यूड का ध्यान रखता है। एक बड़ी चीज़ को छोड़कर: Attribute.IsDefined (प्रकार, प्रकार) के लिए कोई अधिभार नहीं है, ताकि आप यह देख सकें कि कोई विशेषता वर्ग पर परिभाषित है या नहीं। या उस मामले के लिए एक संरचना, प्रतिनिधि या enum।
ऐसा नहीं है कि यह एक वास्तविक समस्या है, Type.GetCustomAttributes () इसे ठीक कर सकता है। लेकिन BlahInfo के सभी प्रकारों में यह भी है। मुझे आश्चर्य है कि समरूपता की कमी है। मैं इस बात पर उंगली नहीं डाल सकता कि यह टाइप के लिए समस्या क्यों होगी। विरासत की समस्या पर अनुमान लगाने से मुझे यह समझ में नहीं आता है। मिश्रण में ValueType होने से लीड बन सकता है, फिर भी इसका कोई मतलब नहीं है। मैं "वे भूल गए" नहीं खरीदते हैं, वे कभी नहीं करते हैं।
यह ओवरलोड क्यों गायब है?
ICustomAttributeProvider
बहुत समझ भी होगा।