iOS coreData使用遇到的问题

使用coreData,一定要有上下文环境。创建上下文时,和以前有些不同,之前

NSManagedObjeContext *context = [NSManagedObjectContext alloc] init];

或者

NSManagedObjeContext *context = [NSManagedObjectContext alloc] new];

最新的Xcode 7.1

@interface ViewController ()

//需要声明该属性 作为初始化上下文的一个参数

@property(readwrite) NSManagedObjectContextConcurrencyType concurrencyType;

@property(strong,nonatomic)NSManagedObjectContext *context;

@end

 

//创建一个名为 myDB.sqlite 的数据库 并关联上下文

- (void)setupContext {

//声明一个山下文

NSManagedObjectContext *context = [[NSManagedObjectContext alloc] initWithConcurrencyType:self.concurrencyType];

//创建一个模型对象

NSManagedObjectModel *model = [NSManagedObjectModel mergedModelFromBundels:nil];

//创建一个持久化存储调度器

NSPersistentStoreCoordinator *store =[ [NSPersistentStoreCoordinator alloc] initWithManagedModel:model]; 

//获取document 目录

NSString *doc = [NSSerachPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,nil) lastObject];

//创建myDB.sqlite 文件路径

NSString *sqlitePath = [doc stringByAppendingPathComponent:@"myDB.sqlite"];

//查看路径

NSLog(@"%@",sqlitePath);

[store addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:[NSURL fileURLWithPath:sqlitePath] options:nil error:&error];

context.persistentStoreCoordinator = store;

self.context = context;

}

 

 

 

posted @   wjwdive  阅读(296)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示