gpt4 book ai didi

ios - 如何将 iOS swift 应用程序中的记录插入到 Azure 移动服务数据库中?

转载 作者:搜寻专家 更新时间:2023-11-01 06:24:42 26 4
gpt4 key购买 nike

在不太复杂的情况下,如何将单个数据量从 iOS 应用程序(使用 Swift)上传到 Azure 移动服务数据库?

具体来说,如何实际使用需要 MSItemBlock 闭包的表插入方法?

这是我正在寻找的装饰方法:

itemTable.insert(<#item: NSDictionary?#>, completion: <#MSItemBlock?#>)

最佳答案

有时您只想做一件简单的事情,而不构建完全完美的解决方案。

就我而言,我想要的只是将记录从我的 iOS 应用程序(使用核心数据)插入/上传到我的 Azure 移动服务数据库。我不想使用表 Controller 或完整的表管理对象(无论如何还不想)——只是一个简短的“概念验证”来测试基本的保存和上传模式。

我所拥有的:

  • 使用 swift 在 Xcode 6 中构建的 iOS 应用
  • CoreData 已链接并运行良好

我想做的事情:

  • 保存到我的应用中的本地核心数据后,将相应的记录插入到我的 Azure 移动服务数据库

我做了什么:

  • 登录到我的 Azure 门户并导航到我的移动服务

  • 选择了 iOS 平台,然后打开“连接现有的 iOS应用程序”链接。

    按照屏幕上的说明进行操作:

  • 下载 iOS SDK

  • 创建“项目”表(只需单击提供的按钮)

我接下来做了什么:

  • 将下载的 sdk 拖到我的 Xcode 项目中

  • 在我的 Bridging-Header.h 文件中(当我有之前在我的设备上运行“创建 NSManagedObject 子类...”命令核心数据模型)我添加了这个导入:

    #import "WindowsAzureMobileServices/WindowsAzureMobileServices.h"
  • AppDelegate.swift中,我添加了对 AzureClient 的常量引用:

    let client = MSClient(applicationURLString: "https://mymobileapp.azure-mobile.net/", applicationKey: “aAaBbBcCc…")

最后:

  • 这是我想要使用的函数:

    itemTable.insert(<#item: NSDictionary?#>, completion: <#MSItemBlock?#>)
  • 因此,用快速的说法,我使用以下命令插入一条记录 azure 的天堂:

    var client = AppDelegate().client // To reference my constant in AppDelegate.swift

    var itemTable:MSTable = client.tableWithName("Item")
    var itemToInsert:NSDictionary = ["text":"My Awesome Item 1"]

    itemTable.insert(itemToInsert,
    completion: {
    insertedItem, error in
    if error{
    println("error: \(error)")
    }
    else{
    println("Success!")
    }
    }
    )

插入方法中的预期/返回的MSItemBlock困扰了我一段时间,直到我阅读了一些有关 swift closures 与 objc < em> block 。

免责声明:上面的代码片段在这种特殊情况下对我有用,但事实上我现在是一只喝醉了的猴子在玩火柴,所以我确实意识到必须有更有效的方法做这个。然而,我在网络上找不到任何关于 MSItemBlock 及其在 Swift 中的使用模式的信息,因此希望这可能是一个起点。对于其他遇到类似问题的人。

关于ios - 如何将 iOS swift 应用程序中的记录插入到 Azure 移动服务数据库中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24407865/

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