如何在位于特定文件夹的Windows应用商店中创建sqlite数据库

时间:2014-07-16 15:37:30

标签: c# sqlite visual-studio-2013 windows-store-apps winrt-xaml

需要帮助,如果它不在apps localfolder中,我似乎无法访问任何其他.sqlite数据库。我看到的每个教程都使用

Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "Example.sqlite");

我试过了:

const string testing = @"C:\Users\***\AppData\Local\Packages\*************\LocalState";

            this.DBPath = Path.Combine(testing, "Example.sqlite");
            using (var db = new SQLite.SQLiteConnection(this.DBPath))
            {
                db.CreateTable<Customer>();

            }

它有效。但当我把它改为:

const string testing = @"C:\Databases";

即使我从应用程序的本地文件夹复制了数据库,也无法打开数据库。 有什么建议 ?我还在努力学习。

2 个答案:

答案 0 :(得分:0)

您无法访问Windows应用商店的C:驱动器。它是商店沙箱的一部分。每个应用程序仅限于可以查看哪些文件和文件夹。如果您需要访问本地数据库文件,请将该文件定义为应用程序中的内容,并使用路径“ms-appx:/// ...”访问它。

答案 1 :(得分:0)

使用文件选择器选择要保存db文件的文件夹。 参考这篇文章: http://msdn.microsoft.com/en-us/library/windows/apps/hh967755.aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-1