2011-02-08 17 views
6

मैं सादा सी # का उपयोग कर एक cmdlet डिजाइन कर रहा हूँ। क्या पैरामीटर के लिए डिफ़ॉल्ट मान को परिभाषित करना संभव है?शक्तियों पैरामीटर डिफ़ॉल्ट मान (सी # cmdlet)

स्क्रिप्ट cmdlet:

[Parameter] [string] $ParameterName = "defaultValue" 

कौन सी # के लिए बराबर है?

[Parameter] 
public string ParameterName { get; set; } 

धन्यवाद?

उत्तर

8

स्वत: कार्यान्वित गुणों के साथ, आप नहीं कर सकते हैं। आपको वास्तविक गेटर और सेटर बनाने की आवश्यकता होगी।

कुछ इस तरह:

private string _ParameterName = "defaultvalue"; 

[Parameter] 
public string ParameterName 
{ 
    get 
    { 
      return _ParameterName ; 
    } 
    set 
    { 
     _ParameterName = value; 
    } 
} 
+1

धन्यवाद। शायद यह बहुत स्पष्ट था ... मैं इसे ऑटो-कार्यान्वित करने के साथ भी कर सकता था, बस उन्हें कन्स्ट्रक्टर में स्थापित कर सकता था। – fra

+0

हाँ यकीन है कि क्यों नहीं ... मैंने –

+1

पर आपके द्वारा दिखाए गए उदाहरण के संदर्भ में उत्तर दिया और आपने मुझे सही संकेत दिया ... धन्यवाद! – fra

0

c# 6.0 के बाद से realeased किया गया है

[Parameter] 
public string ParameterName { get; set; } = "defaultValue"; 
संबंधित मुद्दे