क्या सी # में एक स्थिर वर्ग, विधि या संपत्ति पर एक विशेषता लागू की जा सकती है? पसंद:सी # में, एक विशेषता एक स्थिर वर्ग, विधि या संपत्ति पर लागू किया जा सकता है?
[MyAttribute]
public static MyMethods(string str) ...
क्या सी # में एक स्थिर वर्ग, विधि या संपत्ति पर एक विशेषता लागू की जा सकती है? पसंद:सी # में, एक विशेषता एक स्थिर वर्ग, विधि या संपत्ति पर लागू किया जा सकता है?
[MyAttribute]
public static MyMethods(string str) ...
वहाँ वास्तव में दो सवाल यहाँ
हैं यह सामान्य रूप में विशेषताओं के लिए संभव है वर्ग के लिए लागू किया जाना है, विधि या गुण?
हाँ विशेषताओं वैध इन निर्माणों (और कई अन्य)
के किसी भी लक्षित कर सकते हैं कि यह एक विशिष्ट विशेषता ऐसा करने के लिए के लिए मान्य है?
यह विशिष्ट विशेषता पर निर्भर करता है। गुण नियंत्रित कर सकते हैं कि कौन सी संरचनाओं को AttributeTargets
enum के माध्यम से लागू किया जा सकता है और इसलिए किसी विशिष्ट निर्माण पर एक विशिष्ट विशेषता के लिए इसे अवैध बना दिया जाता है।
उदाहरण के लिए ParamArrayAttribute
केवल मापदंडों को लक्षित कर सकते ObsoleteAttribute
काफी कुछ भी लक्षित कर सकते हैं, जबकि (विधानसभाओं को छोड़कर और शायद एक अन्य मैं याद कर रहा हूँ)
हां। शायद। बस कोशिश करो और देखें।
मुझे आश्चर्य है कि आप इसे क्यों संदेह करेंगे।
हां आप स्थैतिक वर्ग, विधि, संपत्ति में विशेषता लागू कर सकते हैं।
उदाहरण:
[MyAttribute("hello")]
public static string SayHello(string str)
{
return str;
}
हाँ, यह लागू किया जा सकता।
यह विशेषता पर निर्भर करता है, तो वह एक स्थिर वर्ग के लिए आवेदन कर सकते हैं। AttributeTarget देखें। जैसे कि यह पूरी तरह से कानूनी है और गुणों के साथ एक स्थिर वर्ग या विधियों को सजाने की अनुमति है।
अपने आप को आजमाने की आसान चीज़ की तरह लगता है .... क्या आपने कोशिश की और असफल रहा? –
क्या यह '[मेरा]' नहीं होगा? – Kobi
मैं जेसन वेबब की टिप्पणी गूंजता हूं: आपने अभी यह क्यों नहीं किया है? – abelenky