Я создал сущность Car с помощью CoreData framework
в своем приложении IOS.
Я написал определение моего класса автомобиля в файле Car+CoreDataClass.swift
Затем я написал свойства в расширении для этого класса в файле Car+CoreDataProperties.swift
Свойство "lastStarted" типа NSDate
является одним из них.
Но когда попытался установить новое значение для свойства lastStarted объекта class Car
, Xcode сказал, что это свойство типа Date, а не NSDate.
Я не понимаю, почему он думает, что lastStarted имеет тип Date, потому что он был объявлен как NSDate в Car+CoreDataProperties.swift
.
// Код из расширения
extension Car {
@nonobjc public class func fetchRequest() -> NSFetchRequest<Car> {
return NSFetchRequest<Car>(entityName: "Car");
}
@NSManaged public var imageData: NSData?
@NSManaged public var lastStarted: NSDate?
@NSManaged public var mark: String?
@NSManaged public var model: String?
@NSManaged public var myChoice: NSNumber?
@NSManaged public var rating: NSNumber?
@NSManaged public var timesDriven: NSNumber?
@NSManaged public var tintColor: NSObject?
}
// Назначение значений
car.mark = carDictionary["mark"] as? String
car.model = carDictionary["model"] as? String
car.myChoice = carDictionary["myChoice"] as? NSNumber
car.rating = carDictionary["rating"] as? NSNumber
car.timesDriven = carDictionary["timesDriven"] as? NSNumber
car.lastStarted = carDictionary["lastStarted"] as? NSDate //here Xcode says
"Невозможно присвоить значение типа 'NSDate?' набрать "Дата?" "