本文主要是介绍C#实现获得某个枚举的所有名称,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
《C#实现获得某个枚举的所有名称》这篇文章主要为大家详细介绍了C#如何实现获得某个枚举的所有名称,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下...
C#中获得某个枚举的所有名称
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System; using System.Collections.Generic; public static class EnumHelper { public static List<string> AskEnumNames<T>() where T : Enum { Type enumType = typeof(T); List<string> enumNames = new List<string>(); foreach (string name in Enum.GetNames(enumType)) { enumNames.Addjavascript(name); } return enumNames; www.chinasem.cn } } // 使用示例 public enum Colors { Red, Green, Blue } class Program { static void Main(string[] args) { List<string> enumNames = EnumHelper.AskEnumNames<Colors>(); foreach (string name in enumNames) { Console.WriteLine(name); } } }
输出结果如下:
用以上方法即可正常获取某个枚举的所有名称。
下面附件一个C#的反射的典型例子:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Reflection; namespace ReflectionExample { class Program { static void Main(string[] args) { // 通过反射创建类型的实例 Type myType = typeof(MyClass); object myInstance = Activator.CreateInstance(myType, new object[] { "Hello" }); // 获取android并调用类型的方法 MethodInfo myMethod = myType.GetMethod("MyMethod"); myMethod.China编程Invoke(myInstance, new object[] { "World" }); } } class MyClass { public MyClass(string message) { Console.WriteLine(message); } public void MyMethod(string message) { Console.WriteLine(message); } } }
运行结果:
这个例子,利用反射机制构造了对象,并且调用了成员函数。
到此这篇关于C#实现获得某个枚举的所有名称的文章就介绍到这了,更多相关C#获得枚举所有名称内容请搜索编程China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持China编程(www.cwww.chinasem.cnppcns.com)!
这篇关于C#实现获得某个枚举的所有名称的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!