C#enums/reflection

Jam*_*ead 0 c# asp.net reflection enums serialization

假设我有一个带字符串的函数.该字符串包含枚举类型的全名(例如"MyCompany.Area.AotherNamespace.MyEnum").

我怎么能创建一个字符串数组(或List<string>),其元素是值MyCompany.Area.AotherNamespace.MyEnum

这甚至可能吗?

我基本上是在尝试序列化枚举类型的服务器端,然后在客户端JavaScript中输出它,所以我不必在两个地方定义一个枚举 - 在我的C#和我的JavaScript中.

Mat*_*eer 7

Type type = Type.GetType(yourStringWithTheFullEnumName);
string[] valueNames = Enum.GetNames(type);
Run Code Online (Sandbox Code Playgroud)

这在Silverlight(可能还有Compact Framework)中不起作用.如果您正在使用"替代"CLR,那么您可以通过一点点反射获得相同的效果.