CoreData 瞬态属性上下文中可选的语义

Semantics of optional in the context of Transient Attributes in CoreData

将核心数据中的瞬态属性设置为可选或非可选有什么区别。

通常,当您将实体设置为可选时,它允许拥有该属性的实体在存储时将该属性设置为空。但在瞬态属性的情况下,它们实际上并没有被存储。那么将瞬态 属性 设置为可选有什么作用吗?

如果使用可选的非瞬态计算,是否需要将瞬态属性设置为可选属性?

如有任何见解,我们将不胜感激。

如果我没有将 transient 属性设置为可选,我会收到以下错误: Core Data Save Error (NSValidationErrorKey, Cocoa error 1570) 根据以下内容 SO Q/A 是您在尝试存储非可选属性设置为 Null 的实体时遇到的错误。

如果我将属性设置为可选,则不会发生此错误。因此,似乎您需要将瞬态属性设置为可选,让核心数据知道您不 need/want 存储瞬态属性的值