2010-07-03 19 views
6

मैंने अभी रिशेर्पर उठाया है और आसपास के क्षेत्रों को परिवर्तित करने के लिए खेल रहे हैं। मैं इन गुणों को संरक्षित करना चाहता हूं, लेकिन Resharper मुझे वह विकल्प नहीं देना चाहता। इसके बजाय केवल एक संरक्षित आंतरिक विकल्प है। यह मुझे सोच रहा है। या तो वहां कोई नियम है कि गुणों को हमेशा 'संरक्षित' के बजाय 'आंतरिक संरक्षित' होना चाहिए। या मैं बस नहीं जानता कि resharper का उपयोग कैसे करें। जो यह है?संरक्षित आंतरिक गुण बनाम संरक्षित गुण और Resharper

अपडेट: जेटब्रेन से संपर्क करें और उन्होंने इस व्यवहार को एक बग के रूप में पहचाना है और एक बग रिपोर्ट उठाई है। मार्क का जवाब अनिवार्य रूप से 'संरक्षित आंतरिक' के उपयोग पर सही है, इसलिए उसे टिक मिलती है।

+0

क्या आपने कक्षा को सार्वजनिक घोषित किया था? डिफ़ॉल्ट आंतरिक है। आंतरिक वर्ग के आंतरिक रूप से आंतरिक गुणों की घोषणा करना काफी मूर्खतापूर्ण है, जब आप कक्षा को सार्वजनिक करने के लिए प्रतिक्रिया देते हैं तो इसे एक रिफैक्टरिंग टूल की आवश्यकता होती है। हालांकि यह सुनिश्चित करता है कि आप डेमो संस्करण से खुदरा संस्करण में जाएंगे। –

+0

हां - कक्षा को सार्वजनिक घोषित किया गया था। असल में, यह शुरुआत में नहीं था, लेकिन मैंने केवल कक्षा के साथ एक परीक्षण परियोजना बनाई और जानबूझकर इसे सार्वजनिक घोषित कर दिया। मेरी अभी भी वही समस्या है। –

उत्तर

4

इस समय फ़ील्ड क्या हैं? public? मुझे आश्चर्य है कि क्या आपके पास अन्य प्रकारों में कुछ कोड है जो पहले से ही गुणों को छू रहा है, और अगर वे protected थे तो वे तोड़ देंगे। मुझे नहीं पता कि कैसे इसके बारे में resharper महसूस करता है, लेकिन चीजों को बनाने के लिए यह आवश्यक नहीं है (या यहां तक ​​कि विशेष रूप से आम) protected internal - तो protected एक उचित विकल्प होना चाहिए।

+0

फ़ील्ड को बंद करने के लिए संरक्षित किया गया था और कोड केवल संरक्षित के रूप में गुणों के साथ ठीक संकलित करता है –

संबंधित मुद्दे