实体的正确类型是什么?Xcode 8(swift 3)它的实体类型是什么?
例如,将值保存到实体的属性时,哪种类型的声明应该替换下面的三个问号?
func setSample() {
let saveSample: <type???> = SampleEntity(context: context)
saveSample.sampleAttribute = "Save a new string."
do {
try context.save()
} catch {
print("Error with save: \(error)")
}
}
FWIW:NSEntityDescription返回错误:
Cannot convert value of type 'SampleEntity' to specified type 'NSEntityDescription'
Value of type 'NSEntityDescription' has no member 'sampleAttribute'
背景下,我想使实体到一个变量做这样的事情:
func setSample() {
var saveSample: ???
if (criteria) { saveSample = Entity1(context: context) }
if (criteria) { saveSample = Entity2(context: context) }
if (criteria) { saveSample = Entity3(context: context) }
saveSample.sampleAttribute1 = "Foo"
saveSample.sampleAttribute2 = "Bar"
saveSample.sampleAttributeNth = "Etc"
do {
try context.save()
} catch {
print("Error with save: \(error)")
}
}
我们需要更多的背景知道你想要达到的目标,以及“Entity1”和“Entity2”的声明。 – Alexander
@ Alexander Momchliov,'Entity1','Entity2','Entity3'是CoreData.xcdatamodeld中列出的实体名称。 –