private static void SetFacilityListInit() { if (listbak == null) { listbak = FacilityDataTable.GetFacilityStatusArray(true).ToList(); List <Facility.FacilityStatus> listbak2 = new(listbak); //listbak2.AddRange(listbak); foreach (var item in listbak2) { MyLog.LogMessage( "FacilityManagerToolPatch.print4" , item.typeID , item.name ); if (!FacilityDataTable.GetFacilityCanBeDestroy(item.typeID, true)) //if (item.typeID==100 || item.typeID ==150) { // InvalidOperationException: Collection was modified; enumeration operation may not execute listbak.Remove(item);// foreach 에서 Remove 실행시 배열이 바뀜. 즉 Remove 실행하기 위한 다른 조치 방안 필요 } } } if (list == null) { list = new List <Facility.FacilityStatus>(); } list.Clear(); }
public static void GetFacilityStatus() { List <Facility.FacilityStatus> list = FacilityDataTable.GetFacilityStatusArray(true).ToList(); MyLog.LogMessage( "GetFacilityStatus" , list.Count ); foreach (var item in list) { MyLog.LogMessage( item.name , item.typeID ); } }