CoreData question

Hi

I made an app based on the landmark app.

One issue I cannot figure out, is how to persist the favorite landmarks.

this code is used:

struct Landmark: Hashable, Codable, Identifiable {
var id: Int
var name: String
fileprivate var imageName: String?
fileprivate var coordinates: Coordinates
var state: String
var park: String
var category: Category
var isFavorite: Bool
var isFeatured: Bool
}


import Combine

import SwiftUI

final class UserData: ObservableObject {
@Published var showFavoritesOnly = false
@Published var landmarks = landmarkData
}

and the action button as follows (in Landmarkdetail):

Button(action: {
                    self.userData.landmarks[self.landmarkIndex]
                        .isFavorite.toggle()
                }) {
                    if self.userData.landmarks[self.landmarkIndex]
                        .isFavorite {
                        Image(systemName: "star.fill")
                            .foregroundColor(Color.yellow)
                    } else {
                        Image(systemName: "star")
                            .foregroundColor(Color.gray)
                    }

What I already tried, is to Use CoreData within Appdelegate.swift and Scenedelegate.swift files and the following code in Landmarkdetail:

@Environment(\.managedObjectContext) var moc

and under isFavorite.toggle()

                                    if self.moc.hasChanges {

                                try? self.moc.save()
                                
                                }

However, it didn't do anything