我目前正在使用 VS2012 和 .NET 4.5 迈出第一步,使用异步和等待。
为此,我正在实现一个具有以下签名的方法:
public Task<List<string>> foo() {...}
我知道如何返回一个列表,但我不知道如何将这个列表放入任务<>。 怎么做?
编辑:这是完整的例子,我需要知道我需要改变什么才能使返回语句成为可能
public async Task<List<string>> foo()
{
List<string> myList = new List<string>;
{...}
return mylist;
}
最佳答案
如果您的方法实际上是异步的,您只需添加 async
关键字,编译器将生成一个 Task
给你。
您也可以使用 ContinueWith()
手动编写异步代码在现有任务上或在 Task
上使用静态方法类来创建新任务。
如果你的方法不是异步的,那没有意义;你应该返回 List<string>
直接。
如果出于某种原因,您需要返回预先完成的 Task<T>
从同步方法(如果你正在实现一个接口(interface)),你可以调用 Task.FromResult
.
关于c# - 如何通过 C# 返回 Task<List<string>>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13960036/