2017-05-07 11 views
5

क्या कोई मुझे बता सकता है कि विजुअलस्टूडियो 2017 मुझे कीवर्ड के नीचे उस ग्रे इलिप्सिस के साथ बताने की कोशिश कर रहा है?कीवर्ड के नीचे विजुअलस्टूडियो 2017 ग्रे इलिप्सिस

न तो माउस को ऊपर रखकर या राइट-क्लिक करने से मुझे यह बताता है कि यह प्रतीक वहां क्यों दिख रहा है।

VisualStudio2017 code image

+0

हो सकता है कि मूल्य प्रारंभ नहीं किया गया है और पैरामीटर के रूप में उपयोग किया जाता है? –

उत्तर

3

वहां एक कोड सुझाव/रीफैक्टरिंग छुपा हुआ है जो आपको बता रहा है कि आपने जो लिखा है, वही कार्यक्षमता प्राप्त करते समय कुछ अन्य रूपों में भी लिखा जा सकता है।

तक सी # 7 अर्थात वी.एस. 2017, यह है कि लेखन के माध्यम था, लेकिन सी # 7 inline outs साथ आप

return TryGetValue(key, out TValue value) ? value : defaultValue; 

करने के लिए इसे कम कर सकते हैं आप भी इसे घोषणा कर सकते हैं var जो पहले संभव नहीं था। तो आप के रूप में

return TryGetValue(key, out var value) ? value : defaultValue; 

यह लिख सकते हैं प्राप्त करने के लिए कैसे इस

... के लिए अपने कर्सर ले लो और दो तरीके

  1. में इस सुझाव को देख सकते हैं प्रेस Ctrl + .
    या
  2. एक रोस्लीन बल्ब दिखाई देगा और आप उस पर क्लिक कर सकते हैं और ड्रॉप डाउन आपको वही सुझाव देगा।
3

(विधि की पहली पंक्ति पर "TValue" नीचे ग्रे अंडाकार) यह एक संकेत है। अपने कर्सर को उस पर रखें, इसे दो या दो दें, और आपको रोज़लिन लाइटबुल दिखाई देना चाहिए।

इस मामले में, यह शायद आपको लगता है कि सी # 7 वाक्य रचना दिखाने के लिए आप चर इनलाइन बाहर घोषित करने के लिए अनुमति देगा कोशिश कर रहा है:

this.TryGetValue(key, out TValue value) ? value : defaultValue; 
+0

क्या यह 'टीवीएयू मूल्य' नहीं होगा? बेशक, यह एक ऐसी सुविधा है जिसे मुझे पता नहीं था कि मुझे इसकी आवश्यकता है। यह मेरी राय में कोड * कम * पठनीय बनाता है। –

+0

@ कोडी ग्रे, आप सही हैं, पकड़ के लिए धन्यवाद। –

0

यह एक रिफैक्टरिंग संकेत है।

आप View.QuickActions (डिफ़ॉल्ट कीबोर्ड शॉर्टकट: ctrl + .) का उपयोग कर सकते हैं, जबकि कैरेट इलिप्सिस से ऊपर है, यह देखने के लिए कि कौन से विकल्प हैं।

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