Ios Objectvie C到针对executefetchrequest的快速迁移

Ios Objectvie C到针对executefetchrequest的快速迁移,ios,objective-c,swift,Ios,Objective C,Swift,如何将OBJECTIVE-C代码转换为swift。我试过了,但executefetchrequest总是在swift返回NSArray。我无法解析到我的实体 这是我的目标C代码,obj-C没有错误 NSFetchRequest *request = [[NSFetchRequest alloc] init]; NSPredicate *predicate = [NSPredicate predicateWithFormat:@"act_code==%@", @"0000"]; [request

如何将OBJECTIVE-C代码转换为swift。我试过了,但executefetchrequest总是在swift返回NSArray。我无法解析到我的实体

这是我的目标C代码,obj-C没有错误

NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"act_code==%@", @"0000"];
[request setEntity:[NSEntityDescription entityForName:@"TblAct" inManagedObjectContext:self.managedObjectContext]];
[request setPredicate:predicate];
TblAct *tblact_ = Nil;
NSError *err;
tblact_ = [[managedObjectContext executeFetchRequest:request error:&err] lastObject];
下面的是我的雨燕。我在下面的代码中出错

var request = NSFetchRequest()
request.shouldRefreshRefetchedObjects = false
var NSDesc:NSEntityDescription = NSEntityDescription.entityForName("TblAct", inManagedObjectContext: contxt)
let act_codePredicate = NSPredicate(format: "act_code=%@", "0000")
request.entity = NSDesc
request.predicate = act_codePredicate
var err:NSError?
var result:TblAct? = contxt?.executeFetchRequest(request, error: &err) as? TblAct
谢谢你的贡献

最佳Rgds,
dartfrog

executeFetchRequest方法返回一个可选数组,但您试图将其作为单个实体接受。(另外,
contxt
是可选的吗?您正在引用它,一个地方没有
,另一个地方有…)


嗨,谢谢你的回答。我第一行出错了。“行上的连续语句必须用“;”分隔。”。我想是因为[TblAct]。我是否遗漏了一些名称空间或声明?
var results: [TblAct]? = contxt.executeFetchRequest(request, error: &err) as? [TblAct]
var tableAccount: TblAct? = results?.last