Почему бы DoesntWork()
не работать ниже? Ошибка:
Cannot implicitly convert type 'List' to 'IEnumerable'. An explicit conversion exists (are you missing a cast?)
. Я знаю, что это что-то общее с шаблонами / шаблонами, которые я не получаю, но List является IEnumerable, а Implementer является IInterface. Я не понимаю, почему это должно быть приведено (или действительно ли оно может быть).
public interface IInterface
{
// ...
}
public class Implementer : IInterface
{
// ...
}
IEnumerable<IInterface> DoesntWork()
{
List<Implementer> result = new List<Implementer>();
return result;
}