【问题标题】:How to use a Database from a Windows tablet UWP app?如何使用 Windows 平板电脑 UWP 应用程序中的数据库?
【发布时间】:2017-01-19 11:38:09
【问题描述】:

我很快就会为我的大学课程决定一个项目,并且我想到了一个使用 Visual Studio 中的 UWP 工具的 Windows 平板电脑应用程序,因为我想开发 C# 和移动技能区域。 但是,我需要在我的应用程序后面有一个数据库来提交和检索数据。这是一项相对“简单”且常见的任务吗?我不是在寻找简单的东西,我只是想要一些我可以完成的事情,而不用过于担心基础知识。

我最初的想法是在我的 PC 上建立一个数据库,然后托管它以供我的平板电脑连接,但这需要持续的互联网连接和我的 PC 托管。在做了一些研究之后,我发现了一个叫做 SQLite 的东西,人们似乎认为它是一个很好的本地数据库,可以放入设备中。

虽然没有使用移动应用程序的经验,但我很好奇如何在我的 PC 上开发应用程序,然后将其放到 Windows 平板电脑上,两者都使用相同的数据库?我需要在系统之间复制数据库吗?或者我会在我的 PC 上编写代码,然后在我的平板电脑上测试它?

这也是我对数据库“托管”和移动应用程序还很陌生的领域。也许我只是在想事情,但只要问这个问题,我就已经可以说我听起来毫无头绪。我的经验是使用小型 WPF 应用程序、控制台应用程序和网站。

【问题讨论】:

    标签: c# sqlite uwp


    【解决方案1】:

    我需要在我的应用程序后面有一个数据库来提交和检索数据。这是一项相对“简单”且常见的任务吗?

    我认为答案是肯定的。正如您所提到的,SQLite 是一个很好的本地数据库供您使用。由于带有 UWP 的 SQlite 有 guidancesamplesteach videos,所以这对你来说应该是简单而常见的任务。

    我很好奇如何在我的 PC 上开发应用程序,然后将其放到 Windows 平板电脑上,

    为此,您需要Get started with Windows apps。在 PC 上完成应用程序开发后,您可以publish to windows storeSideload your app package,然后您可以从商店或通过侧载包将应用程序安装到平板电脑上。

    我需要在系统之间复制数据库吗?

    SQlite 数据库实际上是保存在本地设备上的带有.db 或其他后缀的数据库文件。是否需要重复取决于您将数据库文件放在哪里。由于 UWP 应用程序是沙盒,并且对访问设备上的文件夹有限制。默认情况下,所有应用都可以访问以下两个位置,应用安装目录应用数据位置。如果您将数据库文件放在应用程序安装目录中,则在一台设备上安装应用程序后,数据库将存在于安装目录中,您不需要复制。但是这个目录是只读的意味着如果你的数据库不需要更新并且只读你可以使用。对于另一个位置,应用程序数据位置有LocalFolderRoamingFolderTemporaryFolder。如果您将数据库放在 LocalFolder 上,则无法漫游,您需要手动复制或使用云服务器助手将其保存以供漫游。如果您将数据库放在 RoamingFolder 上,它可以漫游注意它有一些限制。更多详情请参考File access permissions。在我的选择中,SQLite 是一个本地数据库,仅用于本地数据会更好,我不建议您将其用于漫游。如果你需要一个漫游数据库,云端或服务器端的数据库会好很多。

    【讨论】:

      【解决方案2】:

      虽然没有使用移动应用程序的经验,但我很好奇如何在我的 PC 上开发应用程序,然后将其放到 Windows 平板电脑上,两者都使用相同的数据库?

      您应该从这份文档Intro to the Universal Windows Platform 开始。相信你对 C# 语言很熟悉,你可以使用 C# 开发 UWP 应用。

      正如您所提到的,您可以在应用程序中使用 sqlite 作为本地数据库。当您从 PC 切换到平板电脑时,您可以使用LiveSDk 的 API 来同步数据库。

      这里有一个sqlite sample in uwp 供您参考。

      OneDrive Photo Browser sample 向您展示了如何从云中获取数据,它会对您有所帮助。

      【讨论】:

        猜你喜欢
        • 2021-05-20
        • 1970-01-01
        • 1970-01-01
        • 2016-08-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多