У меня есть общий интерфейс:Реализация универсального интерфейса
public interface IUnauthorizedRequestRespondable<out T> where T:class
{
T GetResponseForUnauthorizedRequest();
}
(я не знаю, почему Resharper рекомендуется Т «из», но это не вопрос).
В моем случае объект, возвращаемый GetResponseForUnauthorizedRequest
, всегда имеет тип, реализующий интерфейс.
Таким образом, все реализации этого интерфейса выглядит следующим образом:
public class SignInReturnedObject : IUnauthorizedRequestRespondable<SignInReturnedObject>
(имя класса и типа в скобках всегда одинаковы).
Что кажется немного неудобным - нет ли более аккуратного способа сообщить компилятору, что метод интерфейса возвращает тип, в котором он входит?
Спасибо.