is-оператор в универсальном списке

interface IVehicle 
{
    void DoSth();
}

class VW : IVehicle
{
    public virtual void DoSth() { ... }
}

class Golf : VW { }

class Lupo : VW
{
    public override void DoSth()
    {
        base.DoSth();
        ...
    }  
}

в моем коде у меня есть:

List<VW> myCars = new List<VW>();
myCars.Add(new Golf());
myCars.Add(new Lupo());

теперь я хочу оценить, есть ли у меня список транспортных средств. что-то вроде:

if(myCars is List<IVehicle>)
{
    foreach(IVehicle v in myCars)
        v.DoSth();
}

как я могу это сделать? is-оператор в общем списке не работает. есть ли другой способ?

7
задан Steven 19 February 2012 в 20:11
поделиться