通过C#reflection获取类的Enum

我有一个Enum喜欢

namespace EnumTest { public class Enumeration { public Enumeration(); public enum Days { day = sunday, night = monday } } } 

如何通过反思获取类型信息数天。

 Type type = assembly.GetType(Days); 

Type type = typeof(Days)将返回Type type = typeof(Days)的类型信息。 如果我有String s = "Days" ,使用此字符串s我需要获取Days的类型信息。

我需要类型=天

我不确定我是否理解你。 如果在字符串对象中有类型名称并且想要获取类型对象,则需要编写整个类型名称。
因为你的枚举是一个内部类型,所以完整的类型名称是“EnumTest.Enumeration.DaysEnumTest.Enumeration + Days”。

要获取您可以调用的类型对象

 Type type = assembly.GetType("EnumTest.Enumeration.DaysEnumTest.Enumeration+Days"); 

要访问您需要的类型非常简单:

 Type type = typeof(Enumeration.Days); 

请注意,枚举声明将不起作用,因为您已在问题中写入它。 它应该是这样的:

 public enum Days { Monday, Tuesday, ... }