Добавить диапазон в коллекцию

Коллега спросил меня сегодня, как добавить диапазон в коллекцию. У него есть класс, который наследует отCollection, Там'свойство get-only этого типа, которое уже содержит некоторые элементы. Он хочет добавить элементы из другой коллекции в коллекцию свойств. Как он может сделать это в стиле C # 3?(Обратите внимание на ограничение относительно свойства get-only, которое не позволяет таким решениям, как объединение и переназначение.)

Конечно, foreach с собственностью. Добавить будет работать. НоListСтиль AddRange был бы гораздо более элегантным.

Это'Достаточно просто написать метод расширения:

public static class CollectionHelpers
{
    public static void AddRange(this ICollection destination,
                                   IEnumerable source)
    {
        foreach (T item in source)
        {
            destination.Add(item);
        }
    }
}

Но у меня есть чувство, что ям изобретаю колесо. Я не'не найти ничего похожего вSystem.Linq или жеmorelinq.

Плохой дизайн? Просто позвоните Добавить? Отсутствует очевидное?

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

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