2014-10-16 97 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