使用 SQLiteAsyncConnection

问题描述

正在处理一个将项目存储到我的 sqlDb 的项目,在 James Montemagno https://www.youtube.com/watch?v=XFP8Np-uRWc&ab_channel=JamesMontemagno 的这个视频之后创建了它,当我尝试将列表保存到 sqlDb 时,我的问题出现了,它显示它已添加,但是当我检索了我的数据,我的 List 道具为空。

public class UserTask{
    [PrimaryKey]
    public string ID { get; set; }
    public string Title { get; set; }
    [TextBlob("TagBlobbed")]
    public List<string> TagsList { get; set; }
    public string TagBlobbed { get; set; }
    public string Details { get; set; }
    [Ignore]
    public string Comment { get; set; }

    public UserTask()
    {
        TagsList = new();
    }
 }


public static class PlannerDataService
{
    static sqliteAsyncConnection db;
    static async Task Init()
    {
        if (db != null) return;
        var databasePath = Path.Combine(FileSystem.AppDataDirectory,"DbTasks.db");
        db = new sqliteAsyncConnection(databasePath);
        await db.CreateTableAsync<UserTask>();
    }

    public static async Task AddNewTask(UserTask t)
    {
        await Init();
        var task = new UserTask()
        {
            ID = t.ID,TagsList = t.TagsList,Details = t.Details,Title = t.Title
        };
        await db.InsertAsync(task); 
    }
    public static async Task<List<UserTask>> GetUserTasks()
    {
        await Init();
        var tasks = await db.Table<UserTask>().ToListAsync();
        var t = tasks.OrderByDescending(a => a.ID).ToList();
        return t;
    }
    public static async Task RemoveTask(string id)
    {
        await Init();
        await db.DeleteAsync<UserTask>(id);
    }
    public static async Task UpdateTask(UserTask t)
    {
        await Init();
        var task = new UserTask()
        {
            ID = t.ID,Title = t.Title
        };
        await db.UpdateAsync(task);
    }
}

我已经看到并阅读了与此类似的问题,并且我尝试按照他们的建议进行操作,但没有成功,这就是为什么我在不更改大部分代码的情况下发布更好的解决方案。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...