स्टैक सेटिंग्स फ़ाइल (Pulumi.dev.yaml) से संसाधन तर्क प्राप्त करने का प्रयास करना और संसाधन बनाने के लिए कॉन्फ़िगरेशन मानों का उपयोग करना, उदाहरण के लिए StorageAccount. SkuName और Kind के लिए, readonly struct का उपयोग किया जा रहा है (क्यों नहीं एनम ???) और यदि वे enum प्रकार के थे, तो मैं आसानी से स्ट्रिंग (स्टैक कॉन्फ़िगरेशन स्ट्रिंग) से पार्स कर सकता था value) Enum.Parse(EnumType, "stringValue") का उपयोग करके एनम करने के लिए।

स्टैक कॉन्फ़िगरेशन स्ट्रिंग मान को (EnumType) संरचना में कैसे पार्स करें?। क्या मैं कुछ भूल रहा हूँ? क्या इसे हासिल करने का कोई बेहतर तरीका है?

(.नेट एसडीके ExpandableStringEnum का उपयोग करता है: ExpandableStringEnum<SkuName>SkuName)

0
HASSAN MD TAREQ 7 नवम्बर 2021, 17:23

1 उत्तर

सबसे बढ़िया उत्तर

फिलहाल ऐसा करने का कोई सीधा तरीका नहीं है। यह काम करने के लिए आपको प्रतिबिंब पर वापस आना होगा:

public static T ParseEnum<T>(string value)
{
    return (T)typeof(T).GetProperty(value)?.GetValue(null);
}

// Usage example
var sku = ParseEnum<SkuName>("Standard_LRS");

इस मुद्दे में सुधार ट्रैक किया गया है, कृपया इसे अपवोट करें।

0
Mikhail Shilkov 7 नवम्बर 2021, 19:12