需要帮助了解IOS核心数据中的瞬态属性

时间:2013-09-06 16:05:38

标签: ios core-data fetch transient

我不明白为什么核心数据中的事情必须如此困难。我有一个具有2个十进制属性的实体,“extended”和“qty”

我想做的就是扩展这两个值(乘法)并在fetch中引用这个计算值。例如NSDecimalNumber * extendedPrice = [self.qty decimalNumberByMultiplyingBy:self.rate];

但在其他情况下,我会想要@sum:这个扩展值属性。

网络可用的文档和示例对于如何执行此操作非常薄弱,这对我来说似乎是非常常见的事情。

我是否在错误的轨道上认为我需要一个瞬态属性和一个awakefromfetch调用?当我尝试在fetch中引用transient属性时,我遇到了崩溃。

1 个答案:

答案 0 :(得分:2)

如果您正在使用SQLite商店,则无法在获取请求中使用瞬态属性。这是因为fetch谓词被转换为SQL查询,并且实际上没有调用任何代码。如果商店中不存在该属性,则无法使用该属性。

如果你想获取对象,然后对它们进行过滤/求和,那么这将适用于瞬态,因为在那个时间点你实际上有对象的实例。