gpt4 book ai didi

c# - 使用 lambda 的任务会出现编译时错误

转载 作者:行者123 更新时间:2023-11-30 21:58:10 25 4
gpt4 key购买 nike

我已经在 StackOverflow 和其他几个地方搜索过,但从未找到确切的答案。在 WPF 应用程序中,我尝试使用 lambda 多行代码块实现任务,但我得到“并非所有代码路径都返回一个值”。如何返回 Func<string>从这个?

private async void btnLongOperation_Click(object sender, RoutedEventArgs e)
{
lblResult.Content = "Commencing long-running operation...";
var task = Task.Run<string>(() =>
{
Thread.Sleep(3000);
lblResult.Content = "Finishing long-running operation...";
});


lblResult.Content = await task;
}

Error 1 Not all code paths return a value in lambda expression of type 'System.Func<string>'

最佳答案

Task.Run<string>给出 Func<string> 类型的输入.这意味着它没有输入( () )并且必须返回一个字符串。所以这可能会有所帮助:

 var task = Task.Run<string>(() => 
{
Thread.Sleep(3000);

//Here
return "Finishing long-running operation...";
});

关于c# - 使用 lambda 的任务会出现编译时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30265914/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com