Я заметил что-то странное, и есть вероятность, что я ошибаюсь.
У меня есть интерфейс IA и класс A:
interface IA { .... }
class A : IA { .... }
В другом классе у меня есть следующее:
private IList<A> AList;
public IList<IA> {
get { return AList; }
}
Но я получаю ошибку компиляции. Но если я изменю его на:
public IList<IA> {
get { return AList.ToArray(); }
}
Все в порядке.
Почему?