做一些项目清理,而不仅仅依靠我的人眼来找到所有嵌套类,是否有人知道我可以使用计算机执行此操作的一种聪明方式?
答案 0 :(得分:3)
如果您只想查看列表,那么对象浏览器应该为您提供内部类的良好概述。它们将是列出的唯一合格名称。
答案 1 :(得分:1)
当然,Type.GetNestedTypes应该可以正常运行。或者那不是你的问题吗?
答案 2 :(得分:0)
以下内容可能有用。
public static class TypeExplorer
{
public static string GetTypeTree<T>()
{
var stringBuilder = new StringBuilder();
GetTypeTree(typeof(T), stringBuilder, 0);
return stringBuilder.ToString();
}
private static void GetTypeTree(Type type, StringBuilder stringBuilder, int nestingLevel)
{
stringBuilder.AppendLine(new string(' ', nestingLevel) + type.Name);
nestingLevel++;
foreach (var nestedType in type.GetNestedTypes(BindingFlags.Public | BindingFlags.NonPublic))
{
GetTypeTree(nestedType, stringBuilder, nestingLevel);
}
}
}