Это, вероятно, я просто вспоминаю вещи задом наперед, но я хотел бы узнать больше о том, что я делаю неправильно ...
Я объявил класс не более чем прямым наследованиемиз общего списка (сделано для упрощения именования), что-то вроде этого:
public class FooList : List<Foo> {}
теперь в другом методе, полностью отделенном от этого класса, я пытаюсь вернуть экземпляр этого класса, однако я хочу отфильтроватькласс основан на критерии, поэтому я использую лямбда-выражение:
var list = new FooList(); // imagine this fills it with different items
var filtered = list.FindAll(c => c.Something == "filter criteria");
теперь в соответствии с методом FindAll, это ДОЛЖНО вернуть List [Foo].Однако я хочу вернуть этот объект как FooList, а не как List [Foo].Нужно ли создавать новый экземпляр FooList и копировать элементы из списка [Foo]?
Если да, то почему?почему я не могу преобразовать List в FooList напрямую, поскольку это один и тот же объект?
Если это МОЖЕТ быть сделано, как мне это сделать?
большое спасибо!