无法更新型号:它在Windows Phone 8.1 c#中没有pk

时间:2015-12-09 09:46:39

标签: c# sqlite windows-phone-8.1

我有一个如下所示的模型类。

public class Section
{
    [PrimaryKey]
    public int section_id { get; set; }
    public string name { get; set; }
    public string url { get; set; }
    public System.DateTime syncTime { get; set; }
}

当我尝试更新时,我收到错误消息为无法更新部分:它没有PK

以下是我的更新代码

async public Task<bool> UpdateSection_SyncTime(int section_Id)
{
    try
    {
        var sections = await db.Table<Section>().ToListAsync();

        foreach (var section in sections)
        {
            if(section.section_id == section_Id)
            {
                section.syncTime = DateTime.Now;    // Update the Section Sync Time

                if (await db.UpdateAsync(section) >= 1)
                    return true;
            }
        }
    }
    catch { }
    return false;
}

SQLite.cs文件中抛出异常并显示错误。

1 个答案:

答案 0 :(得分:0)

我希望代码中的一些修改可以解决问题

foreach (var section in sections)
        {
            if(section.section_id == section_Id)
            {

                section.syncTime = DateTime.Now;    // Update the Section Sync Time
                App.DBConnection.Update(section); //update the db

                if (await db.UpdateAsync(section) >= 1)
                    return true;
            }
        }