class MyBase
{
protected object PropertyOfBase { get; set; }
}
class MyType : MyBase
{
void MyMethod(MyBase parameter)
{
// I am looking for:
object p = parameter.PropertyOfBase; // error CS1540: Cannot access protected member 'MyBase.PropertyOfBase' via a qualifier of type 'MyBase'; the qualifier must be of type 'MyType' (or derived from it)
}
}
क्या प्रतिबिंब के बिना एक विस्तार प्रकार से किसी प्रकार के पैरामीटर की संरक्षित संपत्ति प्राप्त करने का कोई तरीका है? चूंकि विस्तारित वर्ग अपने मूल प्रकार के माध्यम से संपत्ति के बारे में जानता है, इसलिए यदि संभव हो तो यह समझ में आ जाएगा।क्या व्युत्पन्न प्रकार से किसी अन्य ऑब्जेक्ट के 'संरक्षित' सदस्य तक पहुंचने का कोई तरीका है?
सुरक्षित के बजाय इसे सार्वजनिक बनाएं। – dalle
क्या होगा यदि मैं नहीं चाहता कि यह अन्य वर्गों से सुलभ हो, जिनके पास PropertyOfBase से कोई लेना देना नहीं है? –
इसे आंतरिक बनाओ? – dalle