मैं एक कक्षाएं संपत्ति पर एक विशेषता है जो एक आपूर्ति डेटा पंक्ति में एक कॉलम संपत्ति का मूल्य है कि, जैसा कि नीचे निर्दिष्ट करता है के माध्यम से एक वस्तु का निर्माण करने की कोशिश कर रहा हूँ:सी # विशेषताओं के साथ प्रतिबिंब के माध्यम से संपत्ति मूल्यों की स्थापना
[StoredDataValue("guid")]
public string Guid { get; protected set; }
[StoredDataValue("PrograGuid")]
public string ProgramGuid { get; protected set; }
एक आधार वस्तु पर एक बिल्ड() विधि में, मैं
MemberInfo info = GetType();
object[] properties = info.GetCustomAttributes(true);
हालांकि के रूप में विशेषता मान इन गुणों पर सेट हो रही है, इस बिंदु पर मैं अपने ज्ञान में सीमा को साकार कर रहा हूँ।
शुरुआत के लिए, मुझे सही विशेषताओं को वापस नहीं मिल रहा है।
और मैं इन गुणों को प्रतिबिंब के माध्यम से कैसे सेट करूं, अब मेरे पास विशेषताएं हैं? क्या मैं कुछ मौलिक रूप से गलत कर रहा/सोच रहा हूं?
मैं इसे एक परीक्षण दूंगा और आपको बता दूंगा, – johnc
विशेषता के रूप में तार्किक लग रहा है। GETCustomAttribute (...) सिस्टम की एक सरणी देता है। एट्रिब्यूट और इसे केवल विशेषता में ही नहीं डाला जा सकता है। दिखाया गया उदाहरण भी अकेले काम करने के लिए संकलित नहीं करता है। यह देखने के लिए कि सरणी की लंबाई मौजूद है या नहीं, इसके बजाय आवश्यक तत्व में पहला तत्व डालें। –
उदाहरण GetCustomAttribute का उपयोग करता है, GetCustomAttributes नहीं। उदाहरण जब मैं कोशिश करता हूं संकलित करता है (बेशक, विशेषता नाम बदलना)। –