का उपयोग करके किसी प्रकार के स्थैतिक फ़ील्ड मान प्राप्त करना मुझे स्थिर "गणना" कक्षाओं का एक सेट मिला है जिसका उपयोग मैं अर्थपूर्ण चर नामों को रखने के लिए कर रहा हूं ताकि इनपुट फ़ाइल पर प्राप्त किए गए अर्थहीन कोड मानों का प्रतिनिधित्व किया जा सके। यहां एक उदाहरण दिया गया है।प्रतिबिंब
Public Class ReasonCodeValue
Private Sub New()
End Sub
Public Shared ReadOnly ServiceNotCovered As String = "SNCV"
Public Shared ReadOnly MemberNotEligible As String = "MNEL"
End Class
मैं एक विधि है कि इन स्थिर वर्गों में से एक के प्रकार के और एक स्ट्रिंग मान स्वीकार करते हैं और यह निर्धारित मूल्य स्थिर फ़ील्ड मान में से एक है होगा लिखना चाहते हैं। मुझे पता है कि किसी विशिष्ट ऑब्जेक्ट के लिए इंस्टेंस फ़ील्ड कैसे प्राप्त करें, और मुझे पता है कि विशिष्ट फ़ील्ड के लिए स्थिर फ़ील्ड की सूची कैसे प्राप्त करें; जो मैं समझ नहीं पा रहा हूं वह एक उदाहरण के बिना स्थैतिक फ़ील्ड मान कैसे प्राप्त करें। यहां तक कि मुझे अब तक क्या मिला है।
Public Function IsValidValue(ByVal type As Type, ByVal value As String) As Boolean
Dim fields = type.GetFields(BindingFlags.Public Or BindingFlags.Static)
For Each field As FieldInfo In fields
DoSomething()
Next
End Function
मैं मैं गणन कक्षाएं गैर स्थिर सिर्फ इसलिए मैं अपने सत्यापन विधि के अंदर FieldInfo.GetValue
को पारित करने के लिए एक उदाहरण बना सकते हैं बना सकता है चाहिए। मैं अपनी कक्षा को वैसे ही रखूंगा जैसा मैं कर सकता हूं।
मुझे GetRawConstantValue
नामक एक विधि दिखाई देती है। यह खतरनाक लग रहा है। क्या वह मुझे वह दे देगा जो मैं ढूंढ रहा हूं? कोई अन्य विचार?
अरे, आपने इसे मेरे लिए वीबी में रखा है। एक नल गुजरने के बारे में कभी सोचा नहीं। धन्यवाद। –
वीबी में एक प्रश्न पूछें और मैं इसे वीबी में जवाब देने का प्रयास करूंगा। कभी-कभी यह बुरी तरह गलत हो जाता है, लेकिन इस मामले में यह बहुत कठिन नहीं था :) –
एक अन्य जेएस तथ्य: जॉन स्कीट अपने उत्तरों को सार्वभौमिक आईएल में गणना करता है और फिर इसे उचित स्रोत कोड में अनुवाद करता है ... –