में एक स्विच पैरामीटर को अनिवार्य रूप से चिह्नित करने के लिए कैसे करें मुझे यकीन है कि मेरे पास जो कुछ भी खुला है, उसके अलावा मेरे पास कोई अन्य विकल्प नहीं है, लेकिन मैं सामूहिक इंटरनेट मस्तिष्क चुनना चाहता था।पावरहेल
मैं कस्टम कार्यों में बूलियन मानों को पार करते समय [स्विच] पैरामीटर का उपयोग करना पसंद करता हूं। हालांकि, मेरे पास कुछ ऐसे मामले हैं जिनमें मैं स्विच पैरामीटर को अनिवार्य रूप से चिह्नित करना चाहता था। यह वैकल्पिक रूप से पैरामीटर पर [पैरामीटर (अनिवार्य = $ सत्य)] के माध्यम से पूरा किया जा सकता है। हालांकि, मैं वास्तव में यूआई प्रॉम्प्ट को नापसंद करता हूं जो दिखाता है। मैं एक अपवाद फेंकना पसंद करते हैं।
लेकिन, एक स्विच या तो सत्य या गलत हो सकता है, और "IsPresent" संपत्ति कोई भेद नहीं करती है। यदि मैं -example: $ false के रूप में स्विच पैरामीटर पास करता हूं, तो स्विच रिपोर्ट $ उदाहरण है। यह प्रतिनिधित्व गलत है!
मैंने एक [बूल] का उपयोग करने का प्रयास किया है। उदाहरण के लिए:
param
(
[bool]$theValue = $(throw('You didn't specify the value!'))
);
क्या कोई अन्य चाल है जिसे मैं खींच सकता हूं?
क्यों दो स्विच नहीं? 'उदाहरण' और' exampleOff'। फिर, जब न तो 'IsPresent' एक त्रुटि फेंक देते हैं। – jpaugh