public Task<int> DoWorkWithoutAwait()
{
int count = 0;
Task<int> final;
Task<int> startTask = GetCountAsync("x");
final =
startTask.ContinueWith(taskX =>
{
int resultX = taskX.Result;
count = count + resultX;
Console.WriteLine("X Count is " + count);
})
.ContinueWith(tmp =>
{
return GetCountAsync("y").Result;
})
.ContinueWith(ty =>
{
int resultY = ty.Result;
count = count + resultY;
Console.WriteLine("Y Count is " + count);
})
.ContinueWith(tmp =>
{
return GetCountAsync("z").Result;
})
.ContinueWith(tz =>
{
int resultZ = tz.Result;
count = count + resultZ;
Console.WriteLine("Z Count is " + count);
})
.ContinueWith(_ => count);
return final;
}