Есть ли способ получить имя класса экземпляра с помощью VB.NET?
VB.NET: получить имя класса экземпляра
Ответы (4)
Dim type As Type = yourObject.GetType()
Dim typeName As String = type.FullName
Полное имя даст вам полное имя типа, включая пространство имен типа.
Дополнительную информацию о что доступно с Type
.
person
Kelsey
schedule
20.08.2010
как бы вы сделали это на общем уровне с подклассами?
- person NullVoxPopuli; 03.03.2015
Попробуйте следующее
Dim name = Me.GetType().Name
Или для любого экземпляра
Dim name = theObject.GetType().Name
person
JaredPar
schedule
20.08.2010
как бы вы сделали это на общем уровне? поддержка подклассов?
- person NullVoxPopuli; 03.03.2015
Это может быть лучше, если вы используете класс веб-сайта asp.net, а не объект.
Dim ClassName as string = Me.GetType().BaseType.FullName
OR
когда вы используете настольное приложение.
Dim ClassName as string = Me.GetType().Name
person
Rajan
schedule
14.12.2016
Me.GetType().BaseType.FullName не дает мне имя класса (для класса, который я закодировал). Он просто возвращает System.Object. Но me.GetType().Name возвращает имя моего класса.
- person Dan H.; 25.06.2018
Используя Reflection, вы можете сделать следующее...
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString()
Я использую следующее при регистрации информации о трассировке. Это дает вам имя класса со всеми пространствами имен и текущим именем метода.
$"{System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString()}.{MethodBase.GetCurrentMethod().Name}"
person
Chase
schedule
22.10.2020