I have the following structure:
abstract class Base {
public abstract List<...> Get(); //What should be the generic type?
}
class SubOne :
Your abstract class should be generic.
abstract class Base {
public abstract List Get();
}
class SubOne : Base {
public override List Get() {
}
}
class SubTwo : Base {
public override List Get() {
}
}
If you need to refer to the abstract class without the generic type argument, use an interface:
interface IBase {
//common functions
}
abstract class Base : IBase {
public abstract List Get();
}