gpt4 book ai didi

swift - 类型 'MSTable?' 的值没有成员 'pullWithQuery'

转载 作者:行者123 更新时间:2023-11-30 11:47:56 24 4
gpt4 key购买 nike

我尝试更改 Azure 服务器中的客户端页面大小默认是 50,我想把它调大所以我在这个链接中使用微软教程 https://learn.microsoft.com/en-us/azure/app-service-mobile/app-service-mobile-ios-how-to-use-client-library#querying

var client : MSClient?
let client = MSClient(applicationURLString: "AppUrl")
let table = client.tableWithName("TodoItem")
let query = table.query()
let pullSettings = MSPullSettings(pageSize: 3000)
but when I write
table.pullWithQuery(query, queryId:nil, settings: pullSettings) { (error) in
if let err = error {
print("ERROR ", err)
}
}

出现错误“‘MSTable’类型的值?”没有成员“pullWithQuery””

问题是什么?函数名变了吗?

最佳答案

两个问题:

  1. 当前版本的 Swift 文档尚未更新(已提交更新请求)。现代 Swift 中正确的函数名称是 pull 而不是 pullWithQuery。
  2. pullWithQuery 函数位于 MSSyncTable 上,而不是 MSTable 上。 Pull 是离线同步系统的一部分。读取 MSTable 模拟。

更多详细信息:

SDK本身将该函数定义为MSSyncTable.pullWithQuery ,但 Swift 3.0 的功能之一是,当将 Objective C 方法投影到 Swift 中时,它会重命名它们,以删除名称中的冗余参数,因此 verbWithX(X) 变为 verb(with:x),而 pullWithQuery (MSQuery) 变为 pull (使用:MSQuery)。

有关 Swift 3 更改的更多信息,请参阅 https://swift.org/blog/swift-3-0-released/ 。我相信这个特殊的变化是 SE-0005: Better Translation of Objective-C APIs Into Swift

如果您从 Azure 门户下载 Swift 快速入门,那么您将在那里获得正确的现代模式:

self.table!.pull(with: self.table?.query(), queryId: "AllRecords") 

或者你的论点:

self.table!.pull(with: self.table?.query(), queryId: nil, settings: pullSettings) 

关于swift - 类型 'MSTable?' 的值没有成员 'pullWithQuery',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48627724/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com