1
public class Car
{
    private string _manufacturer = string.empty;        
    private string _color = string.empty;
    private string _modelLine= string.empty;

    public string Manufacturer
    {
        get { return _manufacturer; }
        set { _manufacturer= value; }
    }
    public string Color
    {
        get { return _color; }
        set { _color= value; }
    }
    public string ModelLine
    {
        get { return _modelLine; }
        set { _modelLine= value; }
    }
}

List allCars があり、2 番目の List selectedCars リストにあるすべての項目をリストから削除したいと考えています。LINQでこれを達成するにはどうすればよいですか?

私は似たようなことを試しました:

List<Car> listResults = allCars.Except(selectedCars).ToList();

ただし、allCars リストからアイテムを削除するわけではありません。

4

2 に答える 2

1

サンプル ソリューション コード

    var item = new Car { Color = "red", Manufacturer = "bmw", ModelLine = "3" };
    var car = new Car { Color = "red", Manufacturer = "toyo", ModelLine = "2" };
    var item1 = new Car { Color = "red", Manufacturer = "marc", ModelLine = "23" };

    var carsa = new List<Car>
        {
            item1,
            item,
            car
        };
    var carsb = new List<Car>
        {
            item,
            car
        };

    carsa.RemoveAll(carsb.Contains);
于 2013-10-01T19:48:54.513 に答える