最近因为要开发rpc平台的c#客户端,其中部分常量类为了自动加载的map,需要反射解析出静态常量,往上搜了一堆,都各种的不靠谱。
亲自研究了下,如下:
Type t = typeof(SpiderErrorNoConstant);
FieldInfo[] fis=t.GetFields(); // 注意,这里不能有任何选项,否则将无法获取到const常量
foreach (var fieldInfo in fis)
{
Console.WriteLine(fieldInfo.Name + "=" + fieldInfo.GetRawConstantValue().ToString());
}