Avatar ·

C# में Enum पर प्रतिबंध के साथ generic method कैसे बनाएं?

सभी को नमस्ते! मैं एक शुरुआती C# डेवलपर हूँ और एक समस्या का सामना कर रहा हूँ। मैं एक सार्वभौमिक method लिखने की कोशिश कर रहा हूँ जो किसी भी enum को स्वीकार करे और उसका विवरण या कोई मान लौटाए। उदाहरण के लिए, मैं एक method बनाना चाहता हूँ जो enum के सभी मानों को स्ट्रिंग्स की सूची के रूप में आउटपुट करे। मैं कुछ इस तरह लिख रहा हूँ: ```csharp public static string[] GetEnumNames() where T : Enum { return Enum.GetNames(typeof(T)); } ``` लेकिन कंपाइलर एक त्रुटि देता है: "Constraint cannot be special class 'System.Enum'"। मैंने पढ़ा है कि C# में सीधे generic type को enum तक सीमित नहीं किया जा सकता। क्या यह सच है? तो क्या करें? मुझे चाहिए कि method केवल enum के साथ काम करे, किसी भी type के साथ नहीं। कहीं देखा है कि `where T : struct` का उपयोग करते हैं, लेकिन तब एक सामान्य struct भी पास किया जा सकता है, जो उपयुक्त नहीं है। कृपया बताएं कि ऐसे method को सही तरीके से कैसे लागू करें? क्या कोई hack या workaround है? पहले से धन्यवाद! **अतिरिक्त जानकारी:** मैं .NET Framework 4.7.2 का उपयोग कर रहा हूँ, लेकिन अगर .NET Core / .NET 5+ के लिए कोई समाधान है, तो भी बताएं।