与えられたentityName、predicate、およびsortDescriptorsを持つコアデータエンティティからデータをフェッチする一般的な方法を書いています。私は要求されたエンティティの配列として結果を返したい。私はエンティティネームとして学生を与えた場合、私は下記の通り学生の配列を返す必要があり、異なるコアデータエンティティからデータをフェッチし、それぞれのクラスにキャスト結果を返す一般的なメソッド
do {
if let results = try CoreDataController.sharedInstance.masterManagedObjectContext.fetch(request) as? [Student] {
if results.count > 0 {
return results
}
}
}
ここでの問題は、指定されたエンティティ名を使用して、一般的な方法では、それぞれのエンティティクラスの配列に結果をキャストする方法であり、 ?
let coreDataClass = NSClassFromString(entityName) as! NSManagedObject.Type
私はエンティティ名からクラスを生成しようとしました
、しかし、それはありませんが(上記のコードでの場所の学生に)配列宣言に取られます。正しい方法を見つけるのを助けてください。
ありがとうございます!
Swift3.0を使用していますか? – Wolverine
@ウルヴァリンはい。私はswift 3.0とXcode 8.0を使用しています –