1

我正在关注教程使用 SQLite 数据库创建应用程序。

当我执行它时,我得到System.IO.FileNotFoundException指向文件SQLite.cs,错误所在的行显示在下面的屏幕截图中(在 SQLite.cs 文件中)

错误线

下面是创建数据库的代码片段

string dbPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "db.sqlite");
if (!FileExists(dbPath).Result)
{
   using (var db = new SQLiteConnection(dbPath))
   {
        db.CreateTable<Person>();
   }
}

和方法 FileExists

        private async Task<bool> FileExists(string fileName)
        {
            var result = false;
            try
            {
                var store = await Windows.Storage.ApplicationData.Current.LocalFolder.GetFileAsync(fileName);
                result =true;
            }
            catch
            {
            }

            return result;

        }

我想知道出了什么问题。有什么帮助吗?

4

1 回答 1

1

if (!FileExists(dbPath).Result)你说的那一行,如果文件不存在,连接到数据库并创建一个表。所以你的条件是错误的,因为这条线

Windows.Storage.ApplicationData.Current.LocalFolder.GetFileAsync(fileName)

希望现有文件正确执行。然后用以下方法纠正您的if情况:

if (FileExists(dbPath).Result)

于 2014-11-26T17:17:47.780 回答