Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में रिफ्लेक्शन का उपयोग करके मेथड्स और प्रॉपर्टीज कैसे प्रदर्शित करें

रिफ्लेक्शन कोड में टाइप्स, मेथड्स और फील्ड्स के मेटाडेटा का वर्णन करने की प्रक्रिया है। System.Reflection नेमस्पेस आपको लोडेड असेंबलीज़, उनमें मौजूद एलिमेंट्स जैसे क्लासेस, मेथड्स और वैल्यू टाइप्स के बारे में डेटा प्राप्त करने में सक्षम बनाता है।

System.Reflection की कई क्लासेस हैं लेकिन सबसे अधिक उपयोग की जाने वाली हैं: Assembly, AssemblyName, ConstructorInfo, MethodInfo, ParameterInfo, EventInfo, PropertyInfo, और MemberInfo।

उदाहरण: TextInfo क्लास के मेथड्स और प्रॉपर्टीज प्राप्त करना

static void Main(string[] args)
{
    TypeInfo myType = typeof(TextInfo).GetTypeInfo();
    IEnumerable<PropertyInfo> properties = myType.DeclaredProperties;
    IEnumerable<MethodInfo> methods = myType.DeclaredMethods;

    Console.WriteLine(myType);
    Console.WriteLine(properties);
    Console.WriteLine(methods);

    StringBuilder strBuilder = new StringBuilder();
    Console.WriteLine();

    strBuilder.Append("The properties are:");
    foreach (PropertyInfo p in properties)
    {
        strBuilder.Append("\n" + p.Name);
    }

    strBuilder.Append("\n\nThe methods are:");
    foreach (MethodInfo m in methods)
    {
        strBuilder.Append("\n" + m.Name);
    }

    Console.WriteLine(strBuilder);
}

आउटपुट

System.Globalization.TextInfo
System.Reflection.PropertyInfo[]
System.Reflection.MethodInfo[]

The properties are:
Invariant
ANSICodePage
OEMCodePage
MacCodePage
EBCDICCodePage
LCID
CultureName
IsReadOnly
ListSeparator
IsAsciiCasingSameAsInvariant
IsRightToLeft

The methods are:
get_Invariant
get_ANSICodePage
get_OEMCodePage
get_MacCodePage
get_EBCDICCodePage
get_LCID
get_CultureName
get_IsReadOnly
get_ListSeparator
set_ListSeparator
get_IsAsciiCasingSameAsInvariant
get_IsRightToLeft
... (अन्य मेथड्स)

मुख्य बिंदु

  • typeof(T).GetTypeInfo() - टाइप की जानकारी प्राप्त करता है
  • DeclaredProperties - केवल उसी टाइप में घोषित प्रॉपर्टीज लौटाता है (विरासत में मिली नहीं)
  • DeclaredMethods - केवल उसी टाइप में घोषित मेथड्स लौटाता है
  • रनटाइम पर मेटाडेटा की जांच के लिए उपयोगी
  1. माइक्रोसॉफ्ट वर्ड में टेबल प्रॉपर्टीज को प्रदर्शित और संशोधित कैसे करें माइक्रोसॉफ्ट वर्ड में टेबल प्रॉपर्टीज को प्रदर्शित और संशोधित कैसे करें

    टेबल प्रॉपर्टीज का उपयोग माइक्रोसॉफ्ट वर्ड या आउटलुक में टेबल विकल्पों को बदलने या सेट करने के लिए किया जाता है। टेबल प्रॉपर्टीज का उपयोग विभिन्न टेबल विकल्पों को नियंत्रित करने के लिए किया जाता है। टेबल प्रॉपर्टीज डायलॉग बॉक्स में, उपयोगकर्ता टेबल, कॉलम, पंक्ति, और सेल सेटिंग्स बदल सकते हैं। वर्ड म

  1. Python का उपयोग करके TensorFlow में टेंसर कैसे बनाएं और संदेश प्रदर्शित करें? Python का उपयोग करके TensorFlow में टेंसर कैसे बनाएं और संदेश प्रदर्शित करें?

    TensorFlow, Google द्वारा प्रदान किया गया एक मशीन लर्निंग फ्रेमवर्क है। यह एक ओपन-सोर्स फ्रेमवर्क है जिसे Python के साथ मिलकर एल्गोरिदम, डीप लर्निंग एप्लिकेशन और बहुत कुछ लागू करने के लिए उपयोग किया जाता है। इसका उपयोग अनुसंधान और उत्पादन उद्देश्यों के लिए किया जाता है। इसमें ऑप्टिमाइज़ेशन तकनीकें ह

  1. विंडोज़ 11 की समस्याओं को तेजी से ठीक करने के 6 सिद्ध तरीके विंडोज़ 11 की समस्याओं को तेजी से ठीक करने के 6 सिद्ध तरीके

    क्या आप विंडोज़ 11 में अपग्रेड करने के बाद किसी समस्या का सामना कर रहे हैं? विंडोज़ 11 को कैसे मरम्मत करें, इसके तरीके खोज रहे हैं? आप सही जगह पर आए हैं! यदि आप सिस्टम क्रैश, अनुत्तरदायी ऐप्स, या यदि आपका डिवाइस सामान्य से धीमा प्रदर्शन कर रहा है, जैसी किसी भी समस्या का सामना कर रहे हैं, तो आप अपने