Jak wywołać metodę statyczną z Type
, zakładając, że znam wartość zmiennej Type
i nazwę metody statycznej?Wywołanie metody statycznej przy użyciu typu
public class FooClass {
public static FooMethod() {
//do something
}
}
public class BarClass {
public void BarMethod(Type t) {
FooClass.FooMethod() //works fine
if (t is FooClass) {
t.FooMethod(); //should call FooClass.FooMethod(); compile error
}
}
}
więc, biorąc pod uwagę Type t
celem jest wywołanie FooMethod()
na klasy, która ma Type t
. Zasadniczo muszę odwrócić operatora typeof()
.
Dzięki Igor, to działa dobrze (chociaż jestem rozczarowany w C# - wygląda na całkowicie niefasem) W moim rzeczywistym kodzie istnieje wiele klas, które mogą być w zmiennej Type, więc refleksja jest konieczna. – MrEff