Duplicar posibles:
.NET: Determine the type of “this” class in its static methodGetType método estático en
¿Cómo puedo hacer GetType()
accesible desde un método static
?
que tienen esta clase base abstracta
abstract class MyBase
{
public static void MyMethod()
{
var myActualType = GetType(); // this is an instance method
doSomethingWith(myActualType);
}
}
y una implementación de dicha clase. (Que podría tener muchas implementaciones.)
class MyImplementation : MyBase
{
// stuff
}
¿Cómo puedo obtener myActualType
ser typeof(MyImplementation)
?
No creo que pueda hacer esto en una simple cuestión. Una pregunta, ¿por qué querrías esto? El punto con los métodos estáticos es que no necesitan una instancia para ejecutar, ¿verdad? Entonces, ¿por qué es el tipo de materia? Tal vez su problema se puede resolver de una manera completamente diferente. – Alxandr
Estoy intentando escribir un método conveniente para registrar rutas para una aplicación mvc. Estoy intentando restringirlas por espacio de nombres. Es abstracto porque quiero que tu aplicación sea propietaria de la implementación concreta. –
Entonces simplemente no lo escriba como estático, sino como un método en su lugar. Entonces puede obtener fácilmente el tipo mediante 'GetType()'. – Alxandr