【发布时间】:2011-02-22 06:07:36
【问题描述】:
我想要在这里实现的有点棘手。在继续之前,让我先简要介绍一下背景。
我知道我们可以使用枚举作为方法参数的类型。例如我可以做这样的事情(一个非常基本的例子)
命名空间测试 { 类定义枚举 { 公共枚举 MyEnum { 值1 = 0, 值2 = 1 } } 类 UseEnums { 公共无效 UseDefinedEnums(DefineEnums.MyEnum _enum) { //这里的任何代码。 } 公共无效测试() { // "value1" 带有智能感知。 UseDefinedEnums(DefineEnums.MyEnum.value1); } } }我需要做的是创建一个动态枚举并将其用作类型来代替上面提到的DefineEnums.MyEnum。
我尝试了以下方法。 1.使用我从网上获得的一种方法从字符串列表中创建一个动态枚举。并创建了一个我可以使用的静态类。
使用系统; 使用 System.Collections.Generic; 使用 System.Reflection; 使用 System.Reflection.Emit; 命名空间测试 { 公共静态类 DynamicEnum { 公共静态枚举完成; 静态列表 _lst = 新列表(); 静态动态枚举() { _lst.Add("value1"); _lst.Add("value2"); 完成 = CreateDynamicEnum(_lst); } 公共静态枚举 CreateDynamicEnum(List- 尝试使用该类,但我无法找到上面定义的“完成”枚举。即我无法执行以下操作
我想这篇文章已经太长了,但我希望我已经说得很清楚了。
【问题讨论】:
标签: c#