Ich bin auf meine eigenen Zehen getreten mit dem, was ich für einen sehr einfachen Code hielt. Code spricht besser als Worte, also hier ist es.
%Vor%Der Compiler erlaubt mir das nicht, weil IResponse verlangt, dass Result IResult ist, aber ich möchte Generics in der implementierenden Klasse nutzen und das Ergebnis stark nach T eingeben. Ist das nicht möglich oder habe ich es verpasst etwas Triviales?
Sie müssen auch IResponse
generic machen:
Wenn Sie die IResponse
-Schnittstelle ohne den generischen Parameter intakt beibehalten möchten, können Sie noch schicker werden. Das Folgende hat die zwei Schnittstellen, wobei die Klasse die Schnittstelle auch ohne den generischen Parameter transparent implementiert:
Und wenn Sie näher bei Ihrer ursprünglichen Implementierung bleiben möchten, können Sie IResponse<T>
entfernen und Folgendes erhalten:
Wenn Sie "nur" Generika nutzen möchten, brauchen Sie IResponse
nicht.
Die Schnittstelle löst ein anderes Problem, das mit Ihrem Wunsch nicht vereinbar ist. Bedenken Sie
%Vor% Entweder make IResponse
generic oder es komplett entfernen.