Windows phone 8.1本地数据库

6
我刚开始使用Windows Phone,想要编写一些应用程序,但需要类似本地数据库的东西。我该使用什么?我找不到任何解决方案。我尝试了本地数据库,但在WP 8.1上不可用,我还发现了一个关于使用JSON的教程,但这个教程也过时了,在8.1上无法工作。我只想编写一个基于数据库的小型应用程序,其中只有一个表格,我可以从中读取和写入数据。您能否向我发送一篇文章的链接,该文章将解决我的问题?
谢谢您。
2个回答

10

我猜您在谈论的是Windows Phone Universal 8.1吧?本地数据库仅支持WP7、WP8和WP8.1 Silverlight(但没有通用!)我想到了两种替代方案。

  1. SQLite:这是许多移动应用程序的标准,并且也适用于Windows Phone 8.1通用版。您可以在此处找到一个很好的教程(链接)(以防您指的是WP8.1 Silverlight,那么您可以在此处找到我的一个教程(链接))。然而,在Windows Phone中设置SQLite有点棘手,因为您需要确保包含正确的nuget软件包。SQLite是非托管代码。您将失去的是编译为AnyCPU。对于模拟器,您必须使用x86,在部署应用程序到设备/市场时,您需要构建ARM版本。我正在将现有应用程序从本地数据库转移到SQLite中,这花费了我大约5个漫长的晚上才使其运行。

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


我对您提供的文章进行了快速概述。这两篇都将解决我的问题。谢谢! - MajkeloDev
这里的缺点是他们的文档可能需要改进 - 绝对正确。我看到这就是我在寻找的东西,但需要一些时间来设置和理解。 - MajkeloDev
我现在已经使用iBoxDB有一段时间了,但不幸的是,我不得不切换到SQLite。原因是性能问题。对于我的情况,SQLite的速度要快得多(将查询时间从20秒减少到<1秒)。但这可能完全取决于我的工作量。 - Stephan

1

1
链接失效是因为微软收购了诺基亚,相关信息已被删除。 - Juan
https://web.archive.org/web/20150305005224/http://developer.nokia.com/community/wiki/How_to_use_SQLite_in_Windows_Phone - Greg Mulvihill

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接