Задать вопрос

C# метод возвращающий generic тип и преобразование типа?

Метод:
class Cat { }

        public List<T> method<T>()
        {
            return new List<Cat>(); // вместо new тут List<Любой тип>  который приходит из EntityFramework
        }

Вызов метода:
var c = method<Cat>();
И ошибка, что нельзя неявно преобразовать тип из List<Тип> в List
Вопрос почему это не работает, если мы можем вернуть List то почему нельзя вернуть List<Тип> ?
  • Вопрос задан
  • 545 просмотров
Подписаться 1 Простой 5 комментариев
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Software-testing.ru
    Программирование на C# для тестировщиков
    10 недель
    Далее
Решения вопроса 1
samodum
@samodum
Какой вопрос - такой и ответ
В объявлении метода должен быть тот же тип, который возвращается изнутри:
public class Cat<T>{
        public List<T> method()
        {
            return new List<T>();
        }
    }

    public class Kitty
    {
        public void main()
        {
            Cat<String> kitty = new Cat<String>();
            List<String> kittyMethods = kitty.method();
        }
    }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы