如何获取所有嵌套类中所有字段的列表
class AirCraft
{
class fighterJets
{
public string forSeas = "fj_f18";
public string ForLand = "fj_f15";
}
class helicopters
{
public string openFields = "Apachi";
public string CloseCombat = "Cobra";
}
}
我尝试使用的代码来自这里的一篇文章,我可以将它分成两行或三行分隔的代码,它会起作用,问题是关于表达式,并使用最短/现代代码。
IEnumerable<FieldInfo> GetAllFields(Type type) {
return type.GetNestedTypes().SelectMany(GetAllFields)
.Concat(type.GetFields());
}
这将返回 fieldInfo 而不是名称或值,我更需要它作为字符串列表或更适合字段值和名称的字典,但现在可以使用列表。
List<string> (or dictionary) ChosenContainersNamesOrValuesOfAllNested(Type T)
{
return a shortest syntax for that task, using lambda rather foreach
}
谢谢。