Catel 覆盖 InitializeAsync

Catel override InitializeAsync

如果我在 catel 中覆盖 ViewModelBase 的 InitializeAsync() 方法并创建一个新任务,我需要做什么 return。

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

    return basetask;
    // or
    return myTask;
}

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

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

另一种选择是存储所有任务和return Task.WhenAll。