使用System.Reflection检索const字符串字段列表

Lon*_*der 2 c# system.reflection asp.net-4.0 fieldinfo

我已经用const字符串创建了一类类(显示其中一个),我想要实现它.

public static class HTDB_Cols
{
    public sealed class Assistant
    {
        public const string EntryID  = "entryID",
                CustName  = "custName",
                SerialNum  = "serialNum",
                UserName  = "userName",
                Password  = "password",
                EndDate  = "end_date",
                CustID  = "custID",
                TmpCheck  = "tmpCheck",
                Isfamily  = "isfamily",
                Isserver  = "isserver";
    }
}               

public static class DB
{    
    public static void insert(string TableName)
    {
        ColumnsCollection = typeof(HTDB_Cols).GetNestedTypes().Where(f => f.DeclaringType.Name.ToLower().Equals(TableName.ToLower()));
    } 
}
Run Code Online (Sandbox Code Playgroud)

上面的代码显示了我的尝试,但即使经过大量的试验和错误,我仍然无法做到正确.

我希望将所有列的列表作为const集合数组或列表.

L.B*_*L.B 5

var dict = typeof(HTDB_Cols).GetNestedTypes()
            .First(t=>String.Compare(t.Name,TableName,true)==0)
            .GetFields()
            .ToDictionary(f => f.Name, f => f.GetValue(null));
Run Code Online (Sandbox Code Playgroud)

获取清单

var list = typeof(HTDB_Cols).GetNestedTypes()
            .First(t => String.Compare(t.Name, TableName, true) == 0)
            .GetFields()
            .Select(f => f.GetValue(null) as string)
            .ToList();
Run Code Online (Sandbox Code Playgroud)