我有一个类(示出简化的样品和仅有的相关部件)为什么异步方法返回类型不能从任务派生?
public class AsyncScenario : Task<Scenario>
{
public async AsyncScenario Test(Func<Task> action)
{
return await this;
}
}
我不能编译此,因为该方法的返回类型:
编译错误CS1983:“的返回类型的异步方法必须是void,Task或Task < T>”
为什么不允许异步方法返回来自Task<T>
派生的类?
编译器应该如何实例化你的DerivedTask?但是,在这种情况下,没有理由使用'async'。你可以删除'await'和'async',它可以正常工作。 –
Aron