Рассмотрим этот общий класс:
public class Request<TOperation>
where TOperation : IOperation
{
private TOperation _operation { get; set; }
public string Method { get { return _operation.Method; } }
public Request(TOperation operation)
{
_operation = operation;
}
}
Какую реальную выгоду предлагает более общая версия выше этой не-общей версии ниже?
public class Request
{
private IOperation _operation { get; set; }
public string Method { get { return _operation.Method; } }
public Request(IOperation operation)
{
_operation = operation;
}
}
Интерфейс IOperation
:
public interface IOperation
{
string Method { get; }
}