So I have this abstract class. Which has a list of abstract types
public abstract class BaseClass
{
public abstract List<A> History { get; set; }
and the inheritor class.
public class ConcreteClass : BaseClass
{
public override List<B> History { get; set; }
My question is simple. Why does this return an error. A is an abstract class that b inherits. So why can't I have a concrete property override an abstract property?
Note:Due to other issues I cannot use generics with the base class. Some clarity on the issue. I am using mvc and due to some problems with dynamic types I cannot say BaseClass<t>
And in some other areas methods that call a method called GetHistory() need it to return the concrete list not the abstract list. So I am stuck between a rock and a hard place.