Swift & Salesforce SDK,使用 SFRestDictionaryResponseBlock
Swift & Salesforce SDK, using SFRestDictionaryResponseBlock
我一直在尝试创建删除请求以使用 SFRestAPI 从我的自定义对象中删除特定记录。到目前为止我写的代码是;
let deleteRequest = SFRestAPI.sharedInstance().performDelete(withObjectType: "Event__c", objectId: "Event-00003", fail: { (error :NSError!) -> Void in} as! SFRestFailBlock, complete: SFRestDictionaryResponseBlock)
但是,这会立即引发错误提示;
Cannot convert value of type 'SFRestDictionaryResponseBlock.Type' (aka '((Optional>) -> ()).Type') to expected argument type 'SFRestDictionaryResponseBlock' (aka '(Optional>) -> ()')
我已经能够通过将 Fail 块转换为 SFRestFailBlock 类型的 NSError 来解决这个问题,但这似乎不适用于 swift 中的 Complete Block。
块的 Salesforce SDK 类型定义是
public typealias SFRestFailBlock = (Error?) -> Swift.Void
public typealias SFRestDictionaryResponseBlock = ([AnyHashable : Any]?) -> Swift.Void
任何帮助将不胜感激,在此先感谢。
长话短说,SalesForce 的人能够为我提供快速的解决方案。原来我在以前的解决方案之一中使用了错误的语法。
工作代码是:
SFRestAPI.sharedInstance().performDelete(
withObjectType: "Event__c",
objectId: "a000Y00000B3SGbQAN",
fail: { (error: Error?) in
self.log(.debug, msg: "Fail " + (error?.localizedDescription)!)
}) { (response: [AnyHashable : Any]?) in
self.log(.debug, msg: "Success" )
};
我一直在尝试创建删除请求以使用 SFRestAPI 从我的自定义对象中删除特定记录。到目前为止我写的代码是;
let deleteRequest = SFRestAPI.sharedInstance().performDelete(withObjectType: "Event__c", objectId: "Event-00003", fail: { (error :NSError!) -> Void in} as! SFRestFailBlock, complete: SFRestDictionaryResponseBlock)
但是,这会立即引发错误提示;
Cannot convert value of type 'SFRestDictionaryResponseBlock.Type' (aka '((Optional>) -> ()).Type') to expected argument type 'SFRestDictionaryResponseBlock' (aka '(Optional>) -> ()')
我已经能够通过将 Fail 块转换为 SFRestFailBlock 类型的 NSError 来解决这个问题,但这似乎不适用于 swift 中的 Complete Block。
块的 Salesforce SDK 类型定义是
public typealias SFRestFailBlock = (Error?) -> Swift.Void
public typealias SFRestDictionaryResponseBlock = ([AnyHashable : Any]?) -> Swift.Void
任何帮助将不胜感激,在此先感谢。
长话短说,SalesForce 的人能够为我提供快速的解决方案。原来我在以前的解决方案之一中使用了错误的语法。 工作代码是:
SFRestAPI.sharedInstance().performDelete(
withObjectType: "Event__c",
objectId: "a000Y00000B3SGbQAN",
fail: { (error: Error?) in
self.log(.debug, msg: "Fail " + (error?.localizedDescription)!)
}) { (response: [AnyHashable : Any]?) in
self.log(.debug, msg: "Success" )
};