Если вы имеете в виду тип самого объекта, тогда просто используйте this.GetType()
?Это даст вам тип this
, на котором выполняется текущий метод.
Если вы имеете в виду тип ссылки, по которой был выполнен метод, то определить это не представляется возможным.Рассмотрим виртуальные методы в качестве примера.
abstract class Animal {
public abstract void MakeNoise();
}
abstract class Dog : Animal { }
class Labrador : Dog {
public override void MakeNoise() {
...
}
}
Тип ссылки может быть Animal
, но если объект Labrador
, будет вызвана эта версия метода MakeNoise
.Это не способ из метода MakeNoise
узнать, был ли он вызван из экземпляра Animal
, Dog
или Labrador
.