C# 重新创建的Database.com似乎不是';正在创建数据库(xamarin.forms)
我正在制作一个简单的应用程序,使用EntityFramework和Sqlite作为数据库,将此人添加并保存到数据库中,然后将其添加到列表视图中,或者将其删除 我有一个Db类,在构造函数方法中,我使用了名为C# 重新创建的Database.com似乎不是';正在创建数据库(xamarin.forms),c#,C#,我正在制作一个简单的应用程序,使用EntityFramework和Sqlite作为数据库,将此人添加并保存到数据库中,然后将其添加到列表视图中,或者将其删除 我有一个Db类,在构造函数方法中,我使用了名为 数据库。重新创建() 使我的数据库。在MainPage.xaml.cs中,我创建了一个Db类(Db)的实例,我希望获取数据库中的所有Workers表,并将其作为ListView的ItemSource传递。我还在OnAppearing()方法中执行这些操作,以在启动时显示我的ListView项,
数据库。重新创建()
使我的数据库。在MainPage.xaml.cs中,我创建了一个Db类(Db)的实例,我希望获取数据库中的所有Workers表,并将其作为ListView的ItemSource传递。我还在OnAppearing()
方法中执行这些操作,以在启动时显示我的ListView项,但我面临以下异常错误:
Microsoft.Data.Sqlite.SqliteExceptions:'Sqlite错误1:'没有这样的表:Workers'。
(见下图)
似乎数据库.EnsureCreated()
没有创建我的数据库。
或者它创建了我的数据库,但由于某些原因它无法创建表,我想知道这些原因
下面是我的Db类:
这是我的db_路径:
安卓系统:
string FileName = "Workers.sqlite";
string FileLocation = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
string db_path = Path.Combine(FileLocation, FileName);
string FileName = "Workers.sqlite";
string FileLocation = Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), "..", "Library");
string db_path = Path.Combine(FileLocation, FileName);
以及iOS:
string FileName = "Workers.sqlite";
string FileLocation = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
string db_path = Path.Combine(FileLocation, FileName);
string FileName = "Workers.sqlite";
string FileLocation = Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), "..", "Library");
string db_path = Path.Combine(FileLocation, FileName);
那么,数据库和表的创建有什么问题吗?我刚刚在这些行中添加了
,使用了关键字,它意外地修复了它
(我还删除了一些db_路径变量,并通过从App类中获取,使db_路径源更干净、更流畅)
现在代码如下所示:
using (Db db = new Db(App.db_path))
{
List<Worker> AllWorkers = db.Workers.ToList();
WorkersListView.ItemsSource = AllWorkers;
}
使用(Db=newdb(App.Db\u路径))
{
List AllWorkers=db.Workers.ToList();
WorkersListView.ItemsSource=所有工人;
}
我刚刚使用
关键字在这些行中添加了,它意外地修复了它
(我还删除了一些db_路径变量,并通过从App类中获取,使db_路径源更干净、更流畅)
现在代码如下所示:
using (Db db = new Db(App.db_path))
{
List<Worker> AllWorkers = db.Workers.ToList();
WorkersListView.ItemsSource = AllWorkers;
}
使用(Db=newdb(App.Db\u路径))
{
List AllWorkers=db.Workers.ToList();
WorkersListView.ItemsSource=所有工人;
}
检查。检查。