I have class in C# with virtual method, for example:
public class Car
{
public virtual CarModel Run()
{
return new CarModel();
}
}
And second class that inherits from Car
class:
public class CarFiat : Car
{
public async override Task<CarModel> Run()
{
var carModel = base.Run();
await MeasureSpeed();
return carModel;
}
private async Task<string> MeasureSpeed()
{
return await Task.FromResult("50");
}
}
Now I get error: Return type must be CarModel to match overridden member Car.Run()
When I remove await, async
and Task
from Run
from CarFiat
class it works, but I can't call async method inside it:
//public async override Task<CarModel> Run()
public override CarModel Run()
{
var carModel = base.Run();
//await MeasureSpeed();
return carModel;
}