C# FileNotFoundException创建数据库WP8 Sqlite时出错
我将按照教程使用SQLite数据库创建一个应用程序 当我执行它时,我得到了指向文件SQLite.cs的System.IO.FileNotFoundException,下面的屏幕截图(在SQLite.cs文件中)显示了产生错误的行 下面是用于创建数据库的代码段C# FileNotFoundException创建数据库WP8 Sqlite时出错,c#,windows-phone-8,sqlite-net,C#,Windows Phone 8,Sqlite Net,我将按照教程使用SQLite数据库创建一个应用程序 当我执行它时,我得到了指向文件SQLite.cs的System.IO.FileNotFoundException,下面的屏幕截图(在SQLite.cs文件中)显示了产生错误的行 下面是用于创建数据库的代码段 string dbPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "db.sqlite"); if (!FileExists(db
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>();
}
}
string dbPath=Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path,“db.sqlite”);
如果(!FileExists(dbPath).Result)
{
使用(var db=new-SQLiteConnection(dbPath))
{
db.CreateTable();
}
}
并且该方法存在
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;
}
私有异步任务文件存在(字符串文件名)
{
var结果=假;
尝试
{
var store=wait Windows.Storage.ApplicationData.Current.LocalFolder.GetFileAsync(文件名);
结果=真;
}
抓住
{
}
返回结果;
}
我想知道出了什么问题。有什么帮助吗?如果(!FileExists(dbPath).Result)您的意思是,如果文件不存在,请连接到数据库并创建一个表。所以你的情况是错误的,因为
Windows.Storage.ApplicationData.Current.LocalFolder.GetFileAsync(fileName)
希望正确执行现有文件。
然后纠正您的<代码>如果条件:
if(FileExists(dbPath).Result)
为什么使用File.Exists而不传递用于创建文件的路径?@Steve我刚刚纠正了这个问题,同样的错误仍然存在!运算符将翻转结果,因此如果FileExists返回false,那么代码将运行,这不是您想要的。我想:-)我怎么会错过这个