के साथ सदस्यइन्फो का प्रकार प्राप्त करना मैं एक परियोजना की कक्षा संरचना के साथ एक वृक्षदृश्य लोड करने के लिए प्रतिबिंब का उपयोग कर रहा हूं। कक्षा में प्रत्येक सदस्यों के पास एक कस्टम विशेषता है जो उन्हें सौंपा गया है।प्रतिबिंब
मुझे MemberInfo.GetCustomAttributes()
का उपयोग कर कक्षा के लिए गुण प्राप्त करने में कोई समस्या नहीं है, हालांकि मुझे क्लास सदस्य एक कस्टम क्लास है और फिर कस्टम विशेषताओं को वापस करने के लिए खुद को पार्स करने की आवश्यकता है, तो मुझे काम करने का एक तरीका चाहिए।
अब तक, मेरे कोड है:
MemberInfo[] membersInfo = typeof(Project).GetProperties();
foreach (MemberInfo memberInfo in membersInfo)
{
foreach (object attribute in memberInfo.GetCustomAttributes(true))
{
// Get the custom attribute of the class and store on the treeview
if (attribute is ReportAttribute)
{
if (((ReportAttribute)attribute).FriendlyName.Length > 0)
{
treeItem.Items.Add(new TreeViewItem() { Header = ((ReportAttribute)attribute).FriendlyName });
}
}
// PROBLEM HERE : I need to work out if the object is a specific type
// and then use reflection to get the structure and attributes.
}
}
वहाँ एक MemberInfo उदाहरण का लक्ष्य प्रकार तो मैं यह उचित रूप से संभाल कर सकते हैं होने का एक आसान तरीका है? मुझे लगता है कि मुझे कुछ स्पष्ट याद आ रहा है लेकिन मैं मिनट में सर्किल में घूम रहा हूं।
हाँ, 'सदस्यInfo [] membersInfo =' एक बुरा संकेत है। कारणों में से एक 'var' - कम चीजें गलत होने के लिए। –
शानदार, धन्यवाद डैनियल। – GrandMasterFlush