Как я могу получить имя родительского класса какого-либо класса с помощью Reflection?
Получение имени родительского класса с использованием Reflection
Ответ 1
Так же:
typeof(Typ).BaseType.Name
Ответ 2
Я пришел к этому вопросу, ища класс, объявляющий вложенный класс, который является DeclaringType.
this.GetType().DeclaringType.Name
Возможно, не то, что задал ОП, но, возможно, кто-то еще приходит сюда с теми же критериями поиска, что и я.; -)
Ответ 3
obj.GetType().BaseType.Name
Ответ 4
Вы можете использовать:
string baseclassName = typeof(MyClass).BaseType.Name;
Ответ 5
Type type = obj.GetType();
Type baseType = type.BaseType;
string baseName = baseType.Name;
Ответ 6
Заданный вопрос задает вопрос о родительском типе, который можно получить с помощью:
yourRefVar.GetType().UnderlyingSystemType.Name
Ответ 7
В настоящее время в .NET Core BaseType недоступен, вы можете получить его:
typeof(T).GetTypeInfo().BaseType
Ответ 8
Я хотел бы добавить некоторые подробности, в случае, если вам нужно найти конечный родительский класс вашего класса, этот код может помочь. Я считаю, что я не знаю, является ли type
классом или интерфейсом.
do
{
if (type.IsInterface)
if (type.BaseType == null)
break;
if (type.IsClass)
if (type.BaseType == typeof(object))
break;
type = type.BaseType;
} while (true);
string ultimateBaseTypeName = type.Name;