Как объединить несколько списков IEnumerable

У меня есть класс (ClassA), который имеет свойство IEnumerable. Тогда у меня есть другой класс (ClassB), который имеет то же свойство. Они используют интерфейс (InterfaceA). КлассB - это в основном контейнерный класс для нескольких классов ClassA. Как реализовать свойство для ClassB.

interface InterfaceA
{
    IEnumerable<int> MyInts
    {
        get;
    }
}

class ClassA : InterfaceA
{
    public IEnumerable<int> MyInts
    {
        get;
        private set;
    }
}

class ClassB : InterfaceA
{
    ClassA[] classAs = new ClassA[10];
    public IEnumerable<int> MyInts
    {
        get
        {
            //What goes here ?
            classAs.SelectMany(classA => classA.MyInts);
        }

    }
}

Я попытался использовать оператор select LINQ, но это не сработает.

Изменить: Похоже, я не выглядел достаточно тяжело. Ответ здесь в этом вопросе. Как объединить несколько IEnumerables из T

Изменить 2: Включите пример кода, который сработал у меня, если кому-то еще это понадобится.

Ответы

Ответ 1

Просто добавьте свой ответ, так что это не останется без ответа.

classAs.SelectMany(классA = > классA.MyInts);

Нашел это от этого вопроса.

Ответ 2

        public IEnumerable<int> MyInts
        {
            get
            {
                foreach (ClassA c in classAs)
                {
                    foreach (int i in c.MyInts)
                    {
                        yield return i;
                    }
                }
            }

        }