일부 프로젝트를 정리하고, 모든 중첩 된 클래스를 찾기 위해 내 인간의 눈을 의지하지 않고 컴퓨터로이 작업을 수행 할 수있는 영리한 방법을 알고 있습니까?C# 프로젝트에서 모든 중첩 클래스를 찾는 영리한 방법은 무엇입니까?
1
A
답변
3
목록을보고 싶다면 Object Browser가 내부 클래스에 대한 개요를 제공해야합니다. 그들은 나열된 유일한 자격있는 이름입니다.
+0
이것은 충분할 것이고 아무런 설정도 필요 없습니다. 고마워요. – BigOmega
1
확실히 Type.GetNestedTypes은 프로그래밍 방식으로 올바르게 작동합니다. 아니면 당신의 질문이 아닌가?
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);
}
}
}
왜 그렇게하고 싶습니까 ??? 중첩 된 클래스는 훌륭합니다. * private *로 만들 수 있습니다. –
좋은 질문 .. – BigOmega