使用反射设置枚举类型的参数

本文介绍了一个简单的 C# 枚举类型的使用案例,包括如何定义枚举、如何将整数值转换为枚举对象,以及如何通过字符串解析枚举值。此外,还展示了如何调用静态方法处理枚举参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        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 });



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值