using Microsoft.Maui.Storage; using SQLite; namespace MauiTodo; public class TodoDatabase { private SQLiteAsyncConnection? database; private async Task InitializeAsync() { if (database is not null) return; string path = Path.Combine(FileSystem.AppDataDirectory, "tasks.db3"); database = new SQLiteAsyncConnection(path); await database.CreateTableAsync(); } public async Task> GetAllAsync() { await InitializeAsync(); return await database!.Table().ToListAsync(); } public async Task AddAsync(string title) { await InitializeAsync(); await database!.InsertAsync(new TodoTask { Title = title }); } public async Task DeleteAsync(TodoTask task) { await InitializeAsync(); await database!.DeleteAsync(task); } }