public enum TestEnum
{
Test1,
Test2,
Test4
}
public static void Func(TestEnum t)
{
System.Console.WriteLine(t.ToString());
}
static void Main(string[] args)
{
Type t = typeof(Program);
var method = t.GetMethod("Func", System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.Public);
Type test_enum = typeof(TestEnum);
// 下面两种方法可以获取枚举值。看il代码,枚举就是一个整数
System.Object v = System.Enum.ToObject(test_enum,1);
System.Object v2 = System.Enum.Parse(test_enum, "Test4");
method.Invoke(null, new object[] { v2 });