के साथ GetFields मैं किसी निश्चित वस्तु के अंदर सभी फ़ील्ड प्राप्त करने के लिए प्रतिबिंब कक्षाओं का उपयोग कर रहा हूं। मेरे समस्या फिर भी यह है कि यह पूरी तरह से काम करता है जब खेतों एक सामान्य वर्ग के अंदर कर रहे हैं की तरह है, यह है:GetType() से फ़ील्ड नहीं मिल रहा है। BindingFlag.Default
class test
{
string test1 = string.Empty;
string test2 = string.Empty;
}
यहाँ मैं दोनों test1 test2 और मिलता है, मेरी समस्या यह है कि मैं अमूर्त का उपयोग करें और इस प्रकार कई वर्गों संयुक्त है।
मैं की तरह कुछ मिल गया:
class test3 : test2
{
string test4 = string.Empty;
string test5 = string.Empty;
}
class test2 : test1
{
string test2 = string.Empty;
string test3 = string.Empty;
}
class test1
{
string test0 = string.Empty;
string test1 = string.Empty;
}
लेकिन जब मैंने उसे चलाने के लिए, मैं क्षेत्रों GetType().GetFields(BindingFlag.Default)
से वापस नहीं मिलता है।
उन सभी क्षेत्रों में भी संपत्ति है, get; set;
इससे जुड़ा हुआ है। जब मैं कोड चलाता हूं, तो मुझे गुण 1 पर वापस लौटाता है लेकिन वास्तविक फ़ील्ड नहीं।
FieldInfo[] fields = Obj.GetType().GetFields(BindingFlags.Default);
foreach (FieldInfo field in fields)
मैं भी कोशिश की है:
FieldInfo[] fields = Obj.GetType().GetFields(BindingFlags.Public
| BindingFlags.Instance
| BindingFlags.NonPublic
| BindingFlags.Static);
मैं संपत्तियों के लिए एक ही कोड का उपयोग करें:
इस कोड है कि मैं के साथ क्षेत्रों पाने के लिए कोशिश कर रहा हूँ है
PropertyInfo[] properties = Obj.GetType().GetProperties(BindingFlags.Public
| BindingFlags.Instance
| BindingFlags.NonPublic
| BindingFlags.Static);
foreach (PropertyInfo property in properties)
कोई विचार क्यों मुझे सारणी वर्गों से गुण मिलते हैं लेकिन फ़ील्ड नहीं?
वैसे भी कोई फर्क नहीं पड़ता है, क्योंकि फ़ील्ड स्थैतिक नहीं हैं। –
मैंने कोशिश की: फ़ील्डइन्फो [] फ़ील्ड = Obj.GetType()। GetFields (BindingFlags.Public | BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.FlattenHierarchy); लेकिन यह अभी भी काम नहीं कर रहा है। – Patrick
वैसे मैंने कोशिश की: फ़ील्डइन्फो [] फ़ील्ड = Obj.GetType()। GetFields (BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.FlattenHierarchy); लेकिन अभी भी कोई भाग्य नहीं है। – Patrick