refresh list coredata swifui

i maked core data and i fetch all data to List. all working (add ,delete) but! if the app inactive (to background) and i open again to delete a row it crashes with error:

"Thread 1: "An NSManagedObjectContext cannot delete objects in other contexts."

struct HistoryView: View {
  @State private var history: [HistoryList] = [HistoryList]()

  let coreDM: CoreDataManager
   
  var dateFormatter: DateFormatter {
    let formatter = DateFormatter()
    formatter.dateFormat = "MM-dd-yyyy HH:mm"
    return formatter
  }
   
  private func populateHistory(){
    history = coreDM.getAllHistory()
  }
   
  var body: some View {
    NavigationView{
      VStack {
        if !history.isEmpty {
          List {
            ForEach(history, id: \.self) { historyList in
              HStack {
                Text(dateFormatter.string(from: historyList.dateFlash ?? Date(timeIntervalSinceReferenceDate: 0)))
                Text("\(historyList.timerFlash)s")
                  .multilineTextAlignment(.trailing)
                  .frame(maxWidth: .infinity, alignment: .trailing)
              }
            }.onDelete(perform: { indexset in
              indexset.forEach { index in
                let history = history[index]
                coreDM.deleteHistory(history: history)
                populateHistory()
              }
            })
          }.refreshable {
            populateHistory()
            print("## Refresh History List")
          }
        } else {
          Text("History Flashlight is Empty")
        }
      }
      .onAppear {
        populateHistory()
        print("OnAppear")
      }
    }.navigationTitle("History Flashlight")
      .navigationBarTitleDisplayMode(.inline)
  }
}

struct HistoryView_Previews: PreviewProvider {
  static var previews: some View {
    HistoryView(coreDM: CoreDataManager())
  }
}

why?

refresh list coredata swifui
 
 
Q