Я хочу удалить одну выбранную строку, я не думаю, что мой код далеко. В настоящее время он удаляет все строки в списке, сохраненные в БД SQLite, что отлично подходит для кнопки удаления всех, но я этого не хочу. Ниже мой код:
void SaveButton_Clicked(object sender, System.EventArgs e)
{
MainWindowViewModel APR = new MainWindowViewModel()
{
ProductName = proName.Text,
TotalAPR = totAPR.Text,
Total = tot.Text,
Monthly = mon.Text
};
using (SQLiteConnection conn = new SQLiteConnection(App.FilePath))
{
conn.CreateTable<MainWindowViewModel>();
int rowsAdded = conn.Insert(APR);
}
DisplayAlert("Saved!", "Your APR has been saved!", "OK");
BindingContext = new MainWindowViewModel();
OnAppearing();
}
void RemoveButton_Clicked(object sender, System.EventArgs e)
{
MainWindowViewModel APR = new MainWindowViewModel()
{
ProductName = proName.Text,
TotalAPR = totAPR.Text,
Total = tot.Text,
Monthly = mon.Text
};
using (SQLiteConnection conn = new SQLiteConnection(App.FilePath))
{
conn.DeleteAll<MainWindowViewModel>();
int rowsDeleted = conn.Delete(APR);
}
DisplayAlert("Deleted!", "This saved APR has been deleted!", "OK");
BindingContext = new MainWindowViewModel();
OnAppearing();
}
protected override void OnAppearing()
{
base.OnAppearing();
using (SQLiteConnection conn = new SQLiteConnection(App.FilePath))
{
conn.CreateTable<MainWindowViewModel>();
var APRS = conn.Table<MainWindowViewModel>().ToList();
APRListView.ItemsSource = APRS;
}
}
Я также пытался:
using (SQLiteConnection conn = new SQLiteConnection(App.FilePath))
{
conn.Delete<MainWindowViewModel>();
int rowsDeleted = conn.Delete(APR);
}
Но мне говорят, чтобы изменить его на conn.DeleteALL согласно Intellisense.