list.ToArray vs list

Я заметил что-то странное, и есть вероятность, что я ошибаюсь.
У меня есть интерфейс IA и класс A:

interface IA { .... }
class A : IA { .... }

В другом классе у меня есть следующее:

private IList<A> AList;

public IList<IA> {
    get { return AList; }
}

Но я получаю ошибку компиляции. Но если я изменю его на:

public IList<IA> {
    get { return AList.ToArray(); }
}

Все в порядке.

Почему?

6
задан Naor 19 July 2011 в 16:40
поделиться