I 2 Basis-Interfaces haben, IViewBase (die alle Ansichten werden implementieren) und IPresenterBase (die alle Moderatoren umsetzen):Abgeleitet Schnittstelle mit abgeleiteten Schnittstelle Mitglied
public interface IViewBase { }
public interface IPresenterBase
{
IViewBase View { get; set; }
}
Dann eine neue Schnittstelle ILogPresenter i erstellt haben, die leitet sich von IPresenterBase und ILogView von IViewBase ableiten:
public interface ILogPresenter : IPresenterBase { }
public interface ILogView : IViewBase{ }
Wenn ich eine Klasse erstellen, die ILogPresenter implementiert,
public class LogPresenter: ILogPresenter
{
public ILogView View { get; set; }
}
Ich erhalte eine Fehlermeldung:
'LogPresenter' implementiert kein Interface-Mitglied 'IPresenterBase.View'. 'LogPresenter.View' kann 'IPresenterBase.View' nicht implementieren, da es nicht den passenden Rückgabetyp von 'Views.IViewBase' hat.
Ich kann den Rückgabetyp von LogPresenter.View nicht auf ILogView setzen, die von IViewBase abgeleitet ist? Ich möchte ILogPresenter mit einer anderen IView implementieren, die von IViewBase abgeleitet ist.