OGeek|极客世界-中国程序员成长平台

标题: ios - 不确定核心数据代码应该放在 MVC 中的哪个位置 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 18:25
标题: ios - 不确定核心数据代码应该放在 MVC 中的哪个位置

在我正在开发的这个应用程序中,我使用核心数据来存储内容。我在 AppDelegatedidFinishLaunchingWithOptions 方法中填充数据库。在 View Controller 中,我使用 NSFetchRequest 提取所需的数据。

我的问题是,与提取数据相关的代码是否应该在 View Controller 中?或者我应该在为这些实体生成的 NSManagedObject 子类中创建单独的方法并从 View Controller 中调用它们?

有人可以解释一下吗?

谢谢。



Best Answer-推荐答案


您应该创建一个模型类,这意味着:

@interface DataImporter : NSObject
@property(nonatomic, readonly) CoreDataManager *coreDataManager;

 - (id)initWithCoreDataManagerCoreDataManager *)coreDataManager;

 - (void)importDataWithCompletionCallbackvoid (^)())completionBlock;
@end

它不是 NSManagedObject 子类,但它是负责将数据导入您的 CoreData 存储的对象。 importDataWithCompletionCallback 可以例如创建所有必需的 NSManagendObject 对象(取决于一些 JSON)并保存它们,在后台执行,完成后调用回调 block 。

子类化 NSManagendObject 不是一个好方法。

关于ios - 不确定核心数据代码应该放在 MVC 中的哪个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21482656/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4