【问题标题】:Coredata NSFetchRequest DictionaryResultType null properties SwiftCoredata NSFetchRequest DictionaryResultType 空属性 Swift
【发布时间】:2015-05-12 11:26:01
【问题描述】:

大家好,我正在使用此代码从 Coredata 获取结果

  func getRequest(entiryDesc:NSEntityDescription) -> NSFetchRequest{

    var request:NSFetchRequest = NSFetchRequest()
    request.entity = entiryDesc
    request.resultType = NSFetchRequestResultType.DictionaryResultType
    return request

}

现在的问题是我也需要包含 Nil 值的所有属性,但是 excutefetchrequest 只返回那些具有值的属性,是否有任何解决方法可以在每次获取时返回带有“”之类的字符串的 Null 属性?感谢进阶

【问题讨论】:

    标签: xcode swift core-data nsfetchrequest


    【解决方案1】:

    当然,您可以省去.DictionaryResultType 并获取正常的托管对象。字典结果类型有意义的情况很少。

    如果你想构建一个所有属性都填满的字典(不管出于什么不透明的原因),请记住两件事:

    • 确保将空值作为对象插入NSNull()
    • 您可以使用NSEntityDescription API 生成所有属性键。使用entityDescription.propertiesByName.allKeys 生成您实体的所有属性名称的列表。

    【讨论】:

    • 我知道使用对象形式我可以获得具有空属性的结果,但我需要使用 .DictionaryResultType 来实现这一点,而不需要在最后将 NSMangedObject 转换为 Dictionary 的开销。但感谢您的帮助 Mate
    • 如果您要检索所有属性,则如果您获得托管对象,则不会有额外的“开销”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-06
    • 1970-01-01
    • 2016-01-05
    • 1970-01-01
    • 2014-11-15
    • 2018-03-25
    • 1970-01-01
    相关资源
    最近更新 更多