Mar*_*ell 18
对于所有公共+非公共实例字段:
var fields = typeof(YourType).GetFields(
BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
var names = Array.ConvertAll(fields, field => field.Name);
Run Code Online (Sandbox Code Playgroud)
或者在VS2005中(评论):
FieldInfo[] fields = typeof(YourType).GetFields(
BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
string[] names = Array.ConvertAll<FieldInfo, string>(fields,
delegate(FieldInfo field) { return field.Name; });
Run Code Online (Sandbox Code Playgroud)
试试这个:
var t = typeof(YourTypeHere);
List<string> fieldNames = new List<string>(t.GetFields().Select(x => x.Name));
Run Code Online (Sandbox Code Playgroud)