0

我必须做一个需要搜索某个类的对象列表的项目。

插入到列表中的对象是列表中声明的类的子类。所以我有这个

List<Vehicle> veichleList = new List<Vehicle>(); 

Vehicle是班级。我有课Car: Vehicle,,,Moto: VehicleBoat: Vehicle

它们每个都有属性brandmotor并且model都是字符串类型。

问题是我必须能够在不使用 linq 的情况下搜索和编辑对象并将其显示在 ListBox 上以获取属性值。

感谢您的时间 !

4

1 回答 1

1

Not sure if this is what you need...

class  Car: Vehicle
 {
    public string Brand {get;set;}

    public Car()
     {
       Brand="BMW";
     }
 }


foreach(var vehicle in veichleList)
{
  foreach(var prop in vehicle.GetType().GetProperties())
    {
      var name = prop.Name // gives you the name of the property in that class (in the above example it will be equal with "Brand")
      var val = prop.GetValue(vehicle , null) // gives you the value of that property (in the above example it will be equal with "BMW")
    }
}
于 2013-11-01T19:43:07.263 回答