2014-10-16 70 views
6

我刚开始使用windows phone的'冒险'。我想写一些应用程序,但我需要像本地数据库的东西。我应该使用什么?我找不到任何解决方案。我尝试了本地数据库,但它在WP 8.1上不可用,我还找到了关于使用json的教程,但本教程也过时了,它不适用于8.1。我只想写一个基于DataBase的小型应用程序,其中一个表格可以读取和写入。你能否给我发送一篇文章链接来解决我的问题?Windows phone 8.1本地数据库

在此先感谢。

回答

10

我猜你是在谈论的Windows Phone 8.1的通用,对不对?本地数据库仅在WP7,WP8和WP8.1 Silverlight上受支持(但不支持通用!)。我脑海中有两种选择。

  1. SQLite:这是许多移动应用程序的标准,也可用于Windows Phone 8.1 Universal。你可以在here上找到一个很好的教程(如果你指的是WP8.1 Silverlight,那么你可以找到我的教程here)。但是,在Windows Phone中设置SQLite有点棘手,因为您需要确保包含正确的nuget软件包。 SQLite是非托管代码。你会失去什么将编译为AnyCPU。对于模拟器,您必须使用x86,将您的应用程序部署到设备/市场,您需要为ARM构建。我正在将我现有的应用程序从本地数据库迁移到SQLite,并花了我5个晚上才能运行它。

  2. iBoxDB:因为我不一定需要像SQLite这样的关系数据库,所以我尝试了一下iBoxDB,你可以找到here。我花了3个小时才把它包含在我的项目中,因为它只是一个nuget包,而且非常容易设置。这里的缺点是他们的文档可能会更好。他们有一个巨大的样本文件,这有助于了解它的工作原理以及您可以在其网站上找到的信息。到目前为止,这真的很好,我可以使用AnyCPU再次编译,因为它是完全托管的代码。但正如我所说的,这取决于你是否真的需要一个带有表格等的关系数据库,或者只需要将对象保存在某处就可以了。顺便说一句。它还包含索引,因此性能不成问题。

+0

我对您提供的文章做了快速概述。两者都能解决我的问题。谢谢 ! – MajkeloDev 2014-10-17 06:15:29

+0

“这里的缺点是他们的文档可能会更好” - 绝对正确。我发现这是我一直在寻找的东西,但需要一些时间来设置和理解。 – MajkeloDev 2014-10-17 06:51:56

+0

我一直在使用iBoxDB相当长一段时间,不幸的是,不得不切换到SQLite。原因是表现。对于我的场景,SQLite速度要快很多(将查询从20秒减少到<1秒)。但这可能完全取决于我的工作量。 – Stephan 2015-08-22 20:37:02