Catel覆盖InitializeAsync

时间:2016-02-10 10:22:08

标签: override task catel

如果我在catel中覆盖ViewModelBase的InitializeAsync()方法并创建一个新任务,我必须返回什么。

protected override Task InitializeAsync()
{
    var basetask = base.InitializeAsync();
    var myTask = Task.Run(() => { // run something very important } );

    return basetask;
    // or
    return myTask;
}

1 个答案:

答案 0 :(得分:1)

执行多个等待任务时,请使用async和await。

protected override async Task InitializeAsync()
{
    await base.InitializeAsync();
    await Task.Run(() => { // run something very important } );
}

另一种选择是存储所有任务并返回Task.WhenAll。