I\'m setting an NSTimeInterval using setValueForKey within an NSManagedObject Subclass, the value gets set correctly, and is also correct when it is retrieved using valueFor
Assigning to self.valueForKey("dateLastSynced") won't work; it's not an lvalue. You need to use setValueForKey. 
Also, if the dateLastSynced is a date property, you cannot assign it a double value and expect it to work. Use
self.setValue(NSDate(timeIntervalSinceReferenceDate: ), forKey:"dateLastSynced")