类型为"System.Func'1[System.Threading.Tasks.Task]"的表达式不能用于返回类型"System.Threading.Tasks.Task"



所以,我使用下面的赋值:

Expression<Func<Task>> a = Expression.Lambda<Func<Task>>(() => Task.CompletedTask);

并导致线程主题中提到的错误:

类型'System.Func ' 1的表达式[System.Threading.Tasks. tasks .]任务]"不能用于返回类型'System.Threading.Tasks.Task'

我不知道我做错了什么…

尝试删除Expression.Lambda,编译器应该能够自己找出转换:

Expression<Func<Task>> a = () => Task.CompletedTask;

相关内容

最新更新