2010-02-17 14 views
8

में प्रतिबिंब प्रतिबंध जहां सिल्वरलाइट प्रकारों के लिए प्रसिद्ध प्रतिबिंब प्रतिबंधों का वर्णन किया गया है?सिल्वरलाइट

उदाहरण के लिए: यदि मैं PropertyInfo.SetValue विधि के साथ संरक्षित या निजी संपत्ति मान सेट करने का प्रयास करता हूं तो मुझे MethodAccessException अपवाद मिलता है।

इन प्रतिबंधों का क्यों?

उत्तर

11

सुरक्षा उद्देश्यों के लिए, सिल्वरलाइट में प्रतिबिंब सीमित समय पर उपलब्ध है जो सीमित है। ज्यादातर इसका मतलब है कि आप केवल सार्वजनिक सदस्यों तक पहुंच सकते हैं।

यहाँ एमएस इसके बारे में क्या कहते हैं क्या है: http://msdn.microsoft.com/en-us/library/stfy7tfc(VS.95).aspx

इस का कारण यह है कि Silverlight internals ज्यादातर निजी या मुख्य सिल्वरलाइट विधानसभा के लिए आंतरिक हैं। अगर मैं बिना किसी पैरामीटर जांच के उन निजी कार्यों को कॉल कर सकता हूं, तो मैं एक सिल्वरलाइट ऐप लिखने में सक्षम हो सकता हूं जो आपकी निजी फाइलें या कुछ ऐसा पढ़ता है।

+1

अच्छा, लेकिन उस व्यवहार को कहां वर्णित किया गया? आप कौन से "सुरक्षा उद्देश्यों" को जानते हैं? – Andir

+0

मैं वास्तव में इस तर्क को समझ नहीं पा रहा हूं, क्योंकि आप निजी सदस्यों तक पहुंचने वाले अभिव्यक्तियां बना सकते हैं। –

+0

@ माइक: क्या आपके पास एक उदाहरण है? – Gabe