在我的应用程序中,我有多个选项卡,显示来自Entity Framework 5数据库的数据。当我在选项卡之间切换时,我会启动一个任务自动加载数据,因为我不想让GUI变得不响应(这个任务大约需要5-10秒):
public async void LoadData()
{
[...]
await Task.Run(
() =>
{
Measurements = DataContext.Measurements
.Where(m => m.MeasureDate = DateTime.Today)
.ToList();
});
[...]
}
但是,尽管任务正在运行,用户仍然可以切换到另一个选项卡,如果这样做,我希望取消EF查询和/或任务。
如何最好地实现这一点?