【发布时间】:2017-07-14 06:44:13
【问题描述】:
我将 NSData 属性从 CoreData 对象中移出到一个单独的对象中,因此 self.pdfData 变为 self.pdf.data。这看起来像是管理辅助对象的创建和删除的正确方法吗?
- (void)setPdfData:(NSData *)pdfData
{
if (!pdfData) {
if (self.pdf) {
[self.managedObjectContext deleteObject:self.pdf];
self.pdf = nil;
}
}
else {
if (!self.pdf) {
self.pdf = [BaseFormPDF insertInManagedObjectContext:self.managedObjectContext];
}
self.pdf.data = pdfData;
}
}
- (NSData *)pdfData
{
return self.pdf.data;
}
【问题讨论】:
-
为什么你还要将二进制 pdf 数据保存到核心数据中?将文件写入应用程序沙箱中的本地文档目录并在核心数据中写入文件的相对路径,我相信这是更清晰的方法
-
这是一个有效的点。
标签: ios objective-c core-data