私は2つのクラスを持っています。
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>();
この情報を使用して、2 つの個別の 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 台の車両のリストを受け取った場合、これを処理するのに長い時間がかかります。処理を高速化し、重複を回避する方法はありますか?