作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我读到设置 transient 属性的值总是会导致将托管对象标记为“脏”。但是,我不明白的是:如果我创建 NSManagedObject 的子类并使用一些不需要持久化的额外属性,那么 Core Data 如何了解它们以及它如何将对象标记为脏对象我访问这些?
同样,它们没有在数据模型中定义,因此 Core Data 没有很好的暗示它们的存在。
或者 Core Data 是否使用某种内省(introspection)来分析我的自定义类并找出其中有哪些属性?
最佳答案
NSManagedObject
/* Distinguish between changes that should and should not dirty the object for any key unknown to Core Data. 10.5 & earlier default to NO. 10.6 and later default to YES. */
/* Similarly, transient attributes may be individually flagged as not dirtying the object by adding +(BOOL)contextShouldIgnoreChangesFor<key> where <key> is the property name. */
+ (BOOL)contextShouldIgnoreUnmodeledPropertyChanges NS_AVAILABLE(10_6,3_0);
transient 属性可以由撤消/重做管理器处理,额外属性则不能。
我发现核心数据“脏”制定规则有一些奇怪的行为:
在 iOS 5 上,在 -(void)didSave
中设置 transient 属性会使上下文变脏,但在 iOS 4.3 上不会。
how to make NSManagedObjectContext dirty (hasChanges = YES) Manually
我认为核心数据不会内省(introspection)您的 NSManagedObjects
的自定义子类
关于iphone - 数据模型中或 NSManagedObject 的自定义子类中定义的 transient 属性之间有区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2996180/
我正在实现谱聚类算法,我必须确保矩阵(拉普拉斯矩阵)是半正定矩阵。 检查矩阵是否为正定矩阵 (PD) 就足够了,因为可以在特征值中看到“半”部分。矩阵非常大(nxn,其中 n 是几千的数量级)所以特征
我是一名优秀的程序员,十分优秀!