【发布时间】:2015-01-05 16:44:05
【问题描述】:
我正在使用这种方法来更新特定表的元组
public async void Update(MyTable entity)
{
SQLiteAsyncConnection conn = new SQLiteAsyncConnection(path);
await conn.UpdateAsync(entity);
}
参考:http://msdn.microsoft.com/en-us/library/windows/apps/dn263243.aspx
现在主要是,我正在尝试更新 MyTable 中的记录并将 MyTable 记录绑定到绑定到视图的 ViewModel。
private async void button_Tapped(object sender, TappedRoutedEventArgs e)
{
MyTableRepository.Update(scheduleRecord);
this.DefaultViewModel["MyViewModel"] =await ViewModelClass.GetMyTableDataAsync();
}
这里的问题是视图没有得到更新。在我停止应用程序并检查数据库值后,数据库似乎已更新,然后如果我再次运行应用程序,则会显示所需的更新视图。
我是异步等待的新手。所以我的感觉是 ViewModel 可能在更新之前就更新了
MyTableRepository.Update(scheduleRecord);
被执行。 我其实不知道确切的原因。请帮忙。
【问题讨论】:
-
我只是想分享那个模块
(09) Local data为任何发现这篇文章并想了解更多信息的开发人员详细讨论 SQLite。 blog.jerrynixon.com/2014/10/… -
感谢@JerryNixon-MSFT。提供的链接上有很多东西要学习。顺便说一句,我很抱歉。错误在于我如何更新 MyViewModel。实际上我应该从 MyViewModel 中删除 scheduleRecord ,然后我应该调用 this.DefaultViewModel["MyViewModel"] =await ViewModelClass.GetMyTableDataAsync();简而言之,我的逻辑错了。无论如何一百万thanx 4你的帮助
标签: c# sqlite windows-runtime winrt-xaml async-await