Коллекция производных классов, имеющих общий базовый класс

Скажем, у меня есть несколько производных классов, базовый класс которых является универсальным. Каждый производный класс наследует базовый класс с переопределением определенного типа (но все типы также являются производными от одного базового типа).

Например:

У меня есть базовый класс строки

class RowBase
{
    //some properties and abstract methods
}

И у меня есть два конкретных класса строк, которые являются производными от базового класса строк

class SpecificRow1 : RowBase
{
    //some extra properties and overrides
}

class SpecificRow2 : RowBase
{
    //some extra properties and overrides
}

Затем у меня есть второй базовый класс, который является универсальным классом, который содержит коллекцию производных классов из RowBase

class SomeBase<T> where T : RowBase
{
    ICollection<T> Collection { get; set; }
    //some other properties and abstract methods
}

Тогда у меня есть два класса, которые являются производными от SomeBase, но используют разные конкретные классы строк

class SomeClass1 : SomeBase<SpecificRow1>
{
     //some properties and overrides
}

class SomeClass2 : SomeBase<SpecificRow2>
{
     //some properties and overrides
}

Теперь, когда в моей основной или большей области я хочу создать список / коллекцию, которая состоит из объектов SomeClass1 и SomeClass2. подобно

ICollection<???> CombinedCollection = new ...
CombinedCollection.Add(new SomeClass1())
CombinedCollection.Add(new SomeClass2())
.
.
.
//add more objects and do something about the collection
.
.
.

Вопрос: возможно ли иметь такую коллекцию? Если это возможно, как я могу этого достичь? Если нет, что может быть альтернативным способом?

Ответы на вопрос(1)

Ваш ответ на вопрос