NSManagedObject 对于离线和在线获取的行为不同

问题描述

在我的应用程序中,我调用 API 进行搜索,将结果保存在 Core Data 中,然后将它们显示在表格中。存储的数据用于离线搜索

我已将 Codable 与 NSManagedobject 一起使用,以便更轻松地转换为对象。 (不知道这里是否相关)

无论如何,当我的应用从数据库获取数据时,它显示正常,但是当它从 API 获取数据时,对象的属性为空。

我在 API 的完成处理程序中调用以从 CoreData 获取和保存记录,因此我认为这就是并发问题的来源。

如果我将 viewContext 更改为 newBackgroundContext 或私有上下文,数据就会开始重复(即使我对 id 使用了唯一约束)或应用程序崩溃。有人能告诉我解决这个问题的正确方法是什么吗?我的 LocalStoragemanger 类的代码如下。进行离线搜索的逻辑是 API 调用失败在另一个类中。

R = georasterref('RasterSize',[180 360],...
'RasterInterpretation','cells','ColumnsstartFrom','south','RowsstartFrom','west',...
'LatitudeLimits',[-89.5 89.5],'LongitudeLimits',[-179.5 179.5]);

axesm('miller');
% geoshow('landareas.shp')
load coastlines
plot(coastlon,coastlat) % load coastlines

contourm(X,R,'linewidth',3)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)