我有两节课。
class Vehicle{
public string VehicleId {get;set;}
public string VinNo {get;set;}
public int ModelYear {get;set;}
public string Make {get;set;}
public bool WaterDamaged {get;set;}
}
class Vins{
public string VinNo {get;set;}
}
我使用此类结构从数据库中填充了车辆列表。所以代码看起来有点像这样。
List<Vehicle> vehicles = GetAllVehicles();
我拥有的另一个列表来自一个文件。此列表包含所有被水损坏的 VIN。我能够为这个类使用与上面相同的结构。
List<Vins> damaged = ReadFile();
List<Vehicles> damagedGoods = new List <Vehicles>();
List<Vehicles> goodGoods = new List <Vehicles>();
我需要使用此信息创建两个单独的 XML 文件。第一个将被称为 DamagedVehicles_{date},下一个将是 GoodVehicles_{date}。
所以我所做的就是写一个这样的循环。
foreach(var v in damaged)
{
foreach(var v2 in vehicles)
{
if(v.VinNo == v2.VinNo)
{
damagedGoods.Add(new Vehicle{});
}
else
{
goodGoods.Add(new Vehicle{});
}
}
}
这导致了一个小问题。首先,goodGoods 得到了重复,后来我把它们淘汰了。其次,如果我收到一份 80,000 辆汽车的清单,这需要很长时间才能处理。有什么方法可以加快处理速度并避免重复吗?