做一些项目清理工作,而不是仅仅依靠我的肉眼来查找所有嵌套类,有谁知道我可以使用计算机来做到这一点的聪明方法吗?
问问题
424 次
3 回答
3
如果您只想查看列表,那么对象浏览器应该为您提供内部类的良好概述。它们将是列出的唯一限定名称。
于 2012-05-07T15:41:19.033 回答
1
当然,Type.GetNestedTypes应该可以很好地以编程方式执行此操作。或者这不是你的问题?
于 2012-05-07T15:38:18.067 回答
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);
}
}
}
于 2016-03-24T09:22:41.927 回答