Не удается преобразовать из {} в "T"

Начинающий в C# простите за тупость:(. в коде есть момент: SFUSnacks - List из обьектов Snacks

onlineCart - задаётся : OnlineCart<Snacks> onlineCart = new OnlineCart<Snacks>()

List<Snacks> SFUSnacks = new List<Snacks>(); 
foreach (var snacks in SFUSnacks)
{
    if (snacks.Name == filter)
    {
        onlineCart.Add(snacks);
    }
}

также существует типозащищённый класс т.к от требуется по т.з:

public class OnlineCart<T>:IEnumerable
{
    private List<T> items;
    public OnlineCart()
    {
        items = new List<T>();
    }
    public void Add(T item)
    {
        items.Add(item);
    }
    public IEnumerator GetEnumerator()
    {
        return GetEnumerator();
    }
    
} 

ошибка возникает на onlineCart.Add(snacks);


Сам класс:

public class Snacks : FoodProduct // Снэк
{
    public Snacks(string name, Nutrition nut) : base(name, nut)
    {
    }   
}

Грустный момент

Что делать подскажите пожалуйста, задание на generic и котелок совсем не варит... Дополняю фоткой своего кринжового:( кода для пользователя aepot. Кринжик


Ответы (0 шт):