ich hab ein Problem und weis nicht wie ich das am "besten" löse. Folgendes ist gegeben:
internal class MyBaseClass<T> : IMyInterface
{
....
....
public void DoWork();
}
internal class Helper
{
private IMyInterface m_member;
public void DoSomething()
{
//here i want to call the DoWork method of the base class
//that does not work because T is not known
((MyBaseClass<T>)m_member).DoWork();
}
}
MyInterface ist ein geschlossenes Interface daran kann ich es nicht packen. Klar ich könnte eine weiteres Interface machen wo ich dann die DoWork Methode rein packe. Ich könnte auch die Helper Klasse generisch machen, um dann das entsprechenden generischen Typen zu haben und einfach casten zu können.
Mein Frage jetzt ist aber, kann ich irgendwie den generischen Typen der Basisklasse raus bekommen, um die Methode ohne Interface bzw. generische Erweiterung zu callen?